タグ

Raycastに関するedo_m18のブックマーク (2)

  • Tomas Mollerの交差判定【基礎編】

    前回は三角錐を使った交差判定でしたが、今回はTomas Möllerのアルゴリズムという数学的な交差判定について書いてみます。これは連立方程式を機械的に解くクラメルの公式を利用して判定します。この方法の利点は平面式を使うことなく交点を求めることができ、かつコードもシンプルになります。 クラメルの公式とは x + y + z = 9 2x + 3y – 2z = 5 3x – y + z = 7 たとえばこんな連立方程式があるとします。中学や高校の数学では、代入したり消去したりして解を求めたと思います。クラメルの公式を使うとそんな面倒なことをせずとも係数だけを使って解くことが出来ます。(クラメルの公式についてはここに解説を書いてみました) さきほどの連立方程式にクラメルの公式を使うと、次のような流れで解くことが出来ます。上の図を参考にしながら流れを追ってみてください。(ちなみに行列式は何を計

    Tomas Mollerの交差判定【基礎編】
  • UnityのPhysics.CapsuleCast()について - プログラマ専用SNS ミクプラ

    お久しぶりです。覚えてる方がおられるでしょうか。 タイトルの通り、Physics.CapsuleCast()についての質問なのですが、 Unityのリファレンス(英語)では、この関数は コード: static bool CapsuleCast(Vector3 point1, Vector3 point2, float radius, Vector3 direction, float distance = Mathf.Infinity, int layerMask = DefaultRaycastLayers); となっています。 point1からpoint2まで、半径radiusの大きさのカプセルを配置する、 というのはわかるのですが、directionとdistanceの意味がいまいち理解できません。 リファレンスでは、directionの方向にdistanceの長さだけカプセルをスイー

  • 1