所以,我一直在學習物理,微積分,幾何等。我正在對碰撞,法線等進行測試。所以,我或多或少地知道碰撞背後的數學,但怎樣才能獲得正常?我有兩個羣衆中心和一個衝擊點,我可以從形狀1的位置減去形狀2的位置以獲得命中向量,但是如何獲得正常? 90度四捨五入,並且這樣做不起作用,因爲我正在使用旋轉處理我的形狀(儘管稍後使用扭矩和角動量)。我試着用Google搜索我的問題,但我能找到的就是如何檢測/處理衝突(與預先計算的法線或者沒有任何意義)。剛體碰撞...法線?
回答
如果您的碰撞是在剛體之間,那麼「法線」就是在撞擊點垂直於表面的向量。對於球體來說,這是徑向矢量(中心之間的矢量);對於其他形狀,您必須繪製圖表來查看法線指向哪個方向。無論如何,根據碰撞點的定義,兩者的法線必須相等但相反(參見牛頓定律,以便更清楚爲什麼必須這樣做)。
等等,那麼我如何在程序化環境中執行此操作?我已經獲得了速度,位置,以及從第一個質量中心到第二個質量中心的矢量。我仍然不明白你會如何計算這個,比如旋轉的方形。我確實看到你將如何爲一個圓圈。 – user2507230
對幾何體更具體,畫一幅圖。沒有「一般」的答案 - 儘管如果其中一個物體是一個球體並且你知道碰撞點,那麼法線的方向平凡是從球體中心到碰撞點的向量。如果一個正方形的角落碰到了另一個正方形的正面,那麼正常情況就是被擊中的臉部正常。 – Floris
這將是一個多邊形,因爲我的圓/方塊只是變成了多邊形,以允許進行操縱和形狀間碰撞檢測。有多邊形的工作方法嗎? – user2507230
- 1. 停止剛體碰撞後移動
- 2. 子彈 - 剛體不高速碰撞?
- 3. 球線碰撞
- 4. 彈跳線碰撞
- 5. 刪除剛體,但仍然得到碰撞它
- 6. 在碰撞後立即停止剛體運動/旋轉
- 7. Unity3d非傳統的蛇形遊戲與剛體碰撞
- 8. 碰撞和團結碰撞
- 9. 圓和線段碰撞
- 10. AABB vs球體碰撞
- 11. 物體碰撞系統?
- 12. LUA碰撞,多個物體
- 13. 處理碰撞實體
- 14. 與角度物體碰撞
- 15. Libgdx Ashley實體碰撞
- 16. 物理體碰撞檢測
- 17. 與兩個物體碰撞
- 18. 機體不會碰撞
- 19. 與多個物體碰撞
- 20. 碰撞法瘋了;
- 21. 使用physics2d檢測2個碰撞體的碰撞
- 22. Andengine碰撞 - 檢測碰撞和刪除物體時的例外
- 23. 如何確定軸對齊邊界框碰撞中的碰撞法線?
- 24. 線終點上的球線段碰撞
- 25. AndEngine Box2D。移除碰撞後的碰撞遊戲碰撞
- 26. 碰撞
- 27. 碰撞?
- 28. 從子彈物理世界移除後剛體仍然發生碰撞
- 29. 我需要某種形式的Android剛體碰撞檢測引擎
- 30. Three.js碰撞並移除碰撞對象
問題太廣泛了。請提供更多信息。還有一些代碼。 – Josh
這個問題是無關緊要的,因爲OP沒有做任何努力使得這是一個編程而不是數學問題。 –