タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

algorithmとCGと3dに関するedo_m18のブックマーク (2)

  • その15 8分木空間分割を最適化する!

    ホーム<ゲームつくろー!<衝突判定編 3D衝突編 その15 8分木空間分割を最適化する! 空間分割はオブジェクト同士の衝突や不必要な描画を除くなどパフォーマンスの最適化に必須の技術です。2D衝突編その8とその9では、2D平面を分割する4分木空間分割の最適化と実装をしました。同じ考え方は3D空間の分割にも十分に活用できます。 3Dの空間を分割する典型が8分木空間分割(Octree)です。空間分割の方法は、4分木とお話がかぶりますが、まず一番大きな空間(ルート空間)を定義します。3Dの場合これは直方体となります。分割は各辺のど真ん中を割ります。縦横高さそれぞれで分けるので、1回の分割で8つの小空間が出来上がります。これで親であるルート空間の下に8つの小空間が所属する事になります。後は空間を分割するたびに樹状に所属が広がっていきます。 オブジェクトは境界図形に包まれて、8分木内にある境界図形をす

  • GJK アルゴリズム 説明 - ぽんこつでばいす

    結構立ちましたが、GJKについてようやっとまとめれたのでアップしたいと思います。 同じように悩んだ方の手助けになればいいかな?って思います。 実装は簡単なんですけど、この記事用のサンプルは組んでません! ヒマが出来て組めたらアップします。 GJK アルゴリズムは凸多面体同士が重なっているかどうかを調べるアルゴリズムです。 どれだけめり込んだか?を調べるアルゴリズムは Johnson's Distance アルゴリズムっていう別のアルゴリズムになりますが、 やっていることは、非常に良く似ています。 まず、GJK アルゴリズムの前提になっている、ミンコフスキー差について解説します。 ミンコフスキー差というのは、2つの物体の差の Swept Volume になります。 要するに、物体AとBがあった時に、B を原点で反転したもの(原点対称)を物体 A の周り(表面)で 移動させたときに生じる領域の

  • 1