PSM Studio で 2D ゲームの簡単な衝突検出を行っています。
私の現在の方法では、すべてのゲーム オブジェクトを繰り返し処理し、別のゲーム オブジェクト間の距離を見つけてから、2 つのオブジェクトが特定の距離 (通常は各オブジェクトを合わせた幅の 1/2) 内にあるかどうかを確認します。そうであれば、衝突したと見なされます。
この方法は多くの場合に機能しますが、大きなフォールバックがあります。フレームあたりの動きが潜在的な衝突オブジェクトの幅よりも大きいような速度でオブジェクトが移動する場合 (つまり、敵に向かって高速で移動する発射体)、オブジェクトは本質的に他のオブジェクトの上にテレポートします。彼らはしません。
2 つの線分で 2 つの粒子をテストするメソッドを作成することを考えています。線分は、更新中の各オブジェクトの始点と終点の位置で構成されます。
各オブジェクトの極移動 (角度とマグニチュード) とそれぞれの線分がわかれば、2 つの粒子がその魔法の距離内に入るかどうか、つまり衝突したかどうかを計算できますか?