1

私の wip ゲームでは、Circle-Circle 衝突を実装する必要があります。これを実装するには、 Centers 間の二乗距離を計算するだけ(x1-x2)² + (y1-y2)²です。これが半径(r1+r2)²の 2 乗よりも小さい場合、衝突が発生しました。しかし、今日、私はこのリンクを見ました: Circle-Circle collision

ここでは、最初に AABB 衝突を使用して、円が近くにあるかどうかを確認します。しかし、なぜ私はこれをしなければならないのですか?円と円の衝突は単純で、それほど高価な計算ではありません。最初にAABBを使用すると、少なくとも同じ数の計算を行い、円がさらに近くにある場合.

説明させてください:

円ごとに AABB 衝突検出を行います。だから私はn! / (n-2)!計算をしなければなりません。n = テストする円の数。AABB が衝突する円のペアごとに、実際に衝突する場合は別の計算を行う必要があります。

AABB 衝突検出がなければ、私はn! / (n-2)!計算を行うだけで、この計算にそれほどコストがかかるとは思いません。どう思いますか?

4

2 に答える 2