私は2つの長方形を持っています.1つは動いていて、もう1つは静止しています。私は、長方形と移動矩形の現在の座標の両方のサイズと、行きたい場所の座標を持っています。それは一直線に動くでしょう。この情報を使って、2つのボックスがパス上で衝突するかどうかを見つける最も効果的な方法は何ですか?これを行うか、箱ごとに少量ずつフレームを移動し、毎回衝突検出を行う方が効率的ですか?パス上の長方形の衝突の検出
2
A
答えて
2
矩形の一方が静止しているので、これを行う一つの方法は、その最初と最後の位置を用いて行うことができる移動矩形、が移動する経路のポリゴンを作成することである。
(initial position)
+--------+
|\ |\
| \ | \
+--\-----+ \
\ \ \ \
\ +-----\--+
\ | \ |
\| \|
+--------+
(final position)
パスポリゴン:
+--------+
| \
| \
+ \
\ \
\ +
\ |
\ |
+--------+
次に固定矩形とパスポリゴンの間に通常のポリゴン衝突検出アルゴリズムを使用します。
0
一定速度で動いている場合、最も効率的な方法は、衝突する時刻(時間=速度/距離)と衝突するかどうかを計算することです(直線運動方程式を導出し、固定長方形)。可変速度で移動している場合は、速度が変わるたびにこれらの計算を実行します。これらは両方とも、各フレームの比較よりもはるかに効率的です。
関連する問題
- 1. Javaゲームの衝突検出(サイドコリジョン)が長方形で
- 2. 長方形とパス線の衝突を計算する
- 3. Libgdx長方形壁の衝突
- 4. 矩形間の衝突検出libgdx
- 5. 処理上の衝突検出
- 6. 誤動作長方形衝突コード
- 7. n体衝突検出とペアワイズ衝突検出の違いは?
- 8. 別の衝突検出を中断する衝突検出 - Swift
- 9. 衝突検出回転矩形
- 10. Box2Dの衝突検出?
- 11. jQueryの衝突検出
- 12. Locorocoゲームの衝突検出
- 13. Androidの衝突検出
- 14. Javaのサークルサークル衝突検出
- 15. Cocos2Dの衝突検出
- 16. Delphiのカスタムアニメーション - 衝突検出
- 17. Box2d(cocos2d)の衝突検出
- 18. pygameキャノンボールの衝突検出
- 19. JavaScriptの衝突検出
- 20. Libdgx Box2D - 衝突の検出
- 21. Androidでの衝突検出
- 22. ARToolkit Unityの衝突検出
- 23. javascriptの衝突検出
- 24. 壁のpygame衝突検出
- 25. 衝突検出のiOS
- 26. XNAの衝突検出
- 27. XNAの衝突検出2d
- 28. ボールの衝突検出
- 29. Cocos2Dの衝突検出
- 30. はjavascriptの衝突検出
ええ、これをテストします。 – Yifan