2009-05-28 15 views
0

私はボールをキューブ内で動かしており、キューブの外に出たとき(境界球と境界ボックス付き)に検出します。 今ボールをどこから出すのかを検出したいと思います。その後、ボールを正しい方向にリダイレクトすることができました。どのようにボールの「世界」マトリックスでこれを行うことができますか?XNAの衝突検出

私はボールの座標を自分で追跡するべきですか、それともワールドマトリックスから推測すべきですか?

答えて

2

私は衝突から始めます。あなたは6つの平面(それぞれ[点、法線の単位ベクトル]のペア)と球([点、半径]のペア)を持っています。

各点に対してポイントを確認します。これを行うには、点から平面の球の半径でスケールアップされた単位ベクトルを減算します。 (Point - = PlaneUnitVector * radius)

ここで、いくつかのベクトル演算を使用して、飛行機のどの面がオンになっているかを確認できます。

次に、バウンス計算に平面の単位ベクトルを使用します。

次の問題は、一度に複数の飛行機を通過する場合です。