私は楽しみのために単純な物理システムを書いていますが、行き詰まる問題に遭遇しました。
現在の基本的なアルゴリズムは次のとおりです。
- オブジェクトを移動する
- 衝突のチェック
- 衝突があった場合
- 衝突を解決するには、オブジェクトを最小距離だけ移動します。
- 法線、質量などに基づいて速度を調整します
私には、静止した質量のない 2 つの物体に向かって移動する 1 つの移動体があります。
移動オブジェクトは 1 つのステップで変換され、ボディの 1 つと衝突します。
私は、それらが衝突しないように移動できる最小距離を見つけることで対応します。この場合、それはダイナミック ボディを真下に移動することを意味します。しかし、今は別の箱に衝突しています。
そのボックスで同じことを繰り返し、動的ボックスを動かして衝突しないようにしますが、最初のボックスに押し戻します。これが永遠に繰り返されます。私のアルゴリズムは根本的に欠陥がありますか?