2012-03-07 18 views
2

私はこのトピックについて多くの研究をしましたが、私が探している正確な答えは実際には見つかりませんでしたが、おそらく完全な解決策は1つありません...ビデオで3D衝突検出を実行する方法が不思議でしたゲーム。ビデオゲームの衝突検出に最適な手法は?

球や箱のような衝突容積を使用して交差をチェックするのが最善ですか、オブジェクトの位置とベクトルを比較して交差しているかどうかを知るなどの簡単な方法がありますか?

答えて

1

これはあいまいな質問です。それはすべてあなたが実際にやっていることに依存します。そのボックスの場合は、中心からの相対的な側面のチェックを行います。あなたが球(半径)と同じことをやっていると思ってください。

また、衝突が簡単な部分であることは注目に値することです。オブジェクトが衝突した後のオブジェクトが硬い部分であることと、形状がより大きくなるようにすることが望ましいことです。即ち、A球及び正方形衝突は、球及び球とは異なって作用することになる。

良い方法は、1つの軸の衝突と戦い、次に別の軸に移動することです。あなた自身のためにそれを難し​​くしないでください。フォートワース

通読:http://www.gamedev.net/page/resources/_/technical/game-programming/general-collision-detection-for-games-using-ell-r1026

そのプログラミングし、それによって作業の一般的なゲームについての本を買う価値があることを行った後、あなたが最良の方法は、あなたがやって何のためにあるものに手を見ることができることをした後。

希望これは

0

これは必ずしも最速の答えではないが、1つの完全な証明アルゴリズムは、それはそれ以外の領域と0にだ場合は1を返します(XYZの)多変量関数で表される2つの領域を持つことです、乗算に役立ちますそれらを一緒にして、空間全体の積分が非ゼロであるかどうかを調べる。

衝突がポイントベースの場合は、trueとfalseに基づいて関数の値を使用します。

これは、私が唯一のポイントの検出が必要とされるように、単に機能領域のエッジを拡大することで使用することになり、積分...

別のオプションを計算することができます限り、100%の時間を動作します。個性的な機能を大量に準備する。