タグ

algorithmとgeometryに関するmae0510のブックマーク (27)

  • その13 OBBとOBBの衝突

    ホーム<ゲームつくろー!<衝突判定編< OBBとOBBの衝突 3D衝突編 その13 OBBとOBBの衝突 衝突の丸の1つ「OBBとOBB」の衝突です。大きさの違うお互いに3次元的に回転した直方体が衝突しているかどうかを調べるというのはやはり簡単ではありませんが、これができると多種多様な方面で役に立ちます。OBB同士の衝突として主流なのは「分離軸判定」と呼ばれる方法でして、ここでもそれについて見ていきます。ちょっと深呼吸してご覧下さい(^-^; ① 「分離軸」判定とは? OBBの衝突には「分離軸」という物が登場します。これがいったい何なのか?まずは下の図をご覧下さい。 上のOBBは明らかに衝突していません。この時、両方のOBBを分ける直線が「絶対に」存在します。この直線は、ちょっと小難しい言葉で言うと分離超平面(Separating hyperplane)と呼ばれています。直線なのに平面と

  • flipcode - The Half-Edge Data Structure

    A common way to represent a polygon mesh is a shared list of vertices and a list of faces storing pointers for its vertices. This representation is both convenient and efficient for many purposes, however in some domains it proves ineffective. Mesh simplification, for example, often requires collapsing an edge into a single vertex. This operation requires deleting the faces bordering the edge and

    mae0510
    mae0510 2010/12/08
    Half-Edge 構造
  • 三次元形状のデータ構造と形状変形について 渡辺大地 1 主な三次元形状データ構造 名称 特徴 ワイヤーフレームモデル 頂点と稜線のみで表現される形状モデル。 サーフェスモデル 多角形�

    mae0510
    mae0510 2010/12/08
    Half-Edge 構造 ※pdf
  • -Rigid Body Dynamics -

    計算量を減らす。 最近のコンピュータは速くなったねぇ。しみじみ思うよ。しかし、まだまだこの分野の計算を十分にこなせるようなコンピュータってのは、存在しないんですよね。コンピュータの処理速度の向上はものすごい速さだけれど、コンピュータにやらせたい計算ってのは、もっともっと速い計算だから、いつになっても処理速度が十分なコンピュータが現れないってのは、簡単に証明できることです。コンピュータには日進月歩の4乗くらいの速さで進歩してもらわねば。 というわけで、インプリメントの前に、当然のごとく処理量を減らす方法を考えます。 広い空間のなかで、10数個のボールが飛んだりはねたりしたいるようなシーンなどでは、ボール同士が衝突している、または、ボールと壁が衝突しているというのは、ごくまれにしか起こらないわけですから、そのボールを構成する全てのメッシュにたいして、他のボールの点が突き抜けているかどうか

  • その11 AABBと点の最短距離

    ホーム<ゲームつくろー!<衝突判定編< AABBと点の最短距離 3D衝突編 その11 AABBと点の最短距離 AABB(軸並行境界ボックス:Axis-Aligned Bounding Box)と点の最短距離を求めてみます。これは、後々のもう少し複雑な衝突に対する布石となります。 ① AABB 軸並行境界ボックスとは、ワールド空間のXYZ軸に対して各辺が平行な直方体の境界図形を言います。例えば町並みの建物などはこれで表すと便利かもしれませんし、真上から見る3DのSTGに登場する自機や敵機をこの境界ボックスで管理しても良いでしょう。何だかんだで案外使い道のある境界図形です。AABBの各辺は軸に並行なので、座標を読むのがとても簡単です。 ② まずは線分で考えて見ましょう AABBと点の最短距離を考えるための布石とするため、まずは「線分と点の最短距離」を考えて見ます。 線分をAB、空間内の点をPと

  • 3Dゲームの当たり判定

    3Dゲームの当たり判定 文章:syun 日付:2005/8/11 目次 1.はじめに 2.バウンディングスフィア 3.バウンディングボックス 4.変位ベクトル(TODO) 5.参考 1.はじめに 今回は3Dゲームの当たり判定の方法を解説します。 3Dの場合には、以下の3つの方法があります。 バウンディングスフィア(球) バウンディングボックス(箱) 変位ベクトル(光線) それぞれのメリット、デメリットを書くと、こんな感じです。 名称メリットデメリット 変位ベクトルとは、レイ(光線)を飛ばして、 それがポリゴンと交差する距離を判定する方法です。 (レイトレーシングという3DCGの技術を応用したものです) 例えば、地形に沿ってキャラが移動する場合に、 キャラの重心から、地形にレイを飛ばして、その距離を比較することにより、衝突判定を行う方法です。 ただ、変位ベクトルについては、私がまた使ったこと

  • Home - Winterbloed

    If you’ve seen any real­ity zoo/wild-life pro­gram you’ll rec­og­nize this. Five min­utes into the show you’re con­fronted with a wounded, mag­nif­i­cent ani­mal, held in cap­tiv­ity so its care­tak­ers can nur­ture and feed it. And inevitably, after three com­mer­cial breaks, they release it, teary-eyed, back into the wild. Choices, the core of generative art, the code making decisions instead of