有沒有辦法檢測玩家(具有剛體)物體上的碰撞體是否與2D環境中的其他碰撞體碰撞?檢查物體是否與任何東西碰撞
-1
A
回答
1
/編輯 - 實際上piojo的計數器的想法更好,只需使用int而不是bool。 一種方法是在腳本中添加一個叫做碰撞的int並將其設置爲0.然後,如果在任何時候碰撞器觸發OnCollisionEnter只是增加它,並在OnCollisionExit中減少它。 這樣的事情應該爲3D工作:
public int collisions = 0;
void OnCollisionEnter(Collision collision)
{
collisions++;
}
void OnCollisionExit(Collision collision)
{
collisions--;
}
https://docs.unity3d.com/ScriptReference/Collider.OnCollisionEnter.html
https://docs.unity3d.com/ScriptReference/Collider.OnCollisionExit.html
4
不是本身,而是有兩種方法,你可以得到的信息。保持int
計數器最簡單,並將其增量爲OnCollisionEnter
並遞減爲OnCollisionExit
。當計數器爲0時,不存在衝突。
另一種方式,它會告訴你哪些對撞機重疊,但不一定如果他們觸摸,是使用物理功能。注意你有哪種類型的對撞機 - 球體,膠囊,盒子。瞭解對撞機的尺寸/形狀/位置,您可以撥打Physics.OverlapBox
,Physics.OverlapCapsule
或Physics.OverlapSphere
。賦予函數與對撞機相同的形狀,並且它將返回與該空間重疊的碰撞體。 (對於2D對撞機,您可以使用Physics2D.Overlap*
功能。)
相關問題
- 1. 物理體碰撞檢測
- 2. 2D碰撞檢測和OpenGL的東西
- 3. jQuery碰撞插件|如何真正檢查是否有碰撞
- 4. 如何檢查兩個移動物體是否相互碰撞IOS
- 5. 非方形物體的碰撞檢測
- 6. 與移動物體的碰撞
- 7. 檢查碰撞
- 8. Farseer 3.3檢查未啓用的物體是否會發生碰撞(產卵)
- 9. 物體碰撞系統?
- 10. 檢查哪一個對象與另一物體碰撞而腳本是相同
- 11. 如何檢查cin中是否有任何東西[C++]
- 12. libgdx - 與不同物體制成的物體碰撞
- 13. 如何檢測2個物體碰撞時顏色是否相同?
- 14. jQuery/javascript檢查是否有任何東西正在加載
- 15. 檢查遊標是否返回任何東西
- 16. 電暈/ Box2D檢測與非移動靜態物體的碰撞
- 17. 檢查沒有物理體的SKSprite節點之間的碰撞
- 18. aframe物理檢測碰撞b/w 2個靜態物體
- 19. 如何檢測as3閃存中的碰撞和堆積物體?
- 20. 如何檢測快速移動之間的碰撞物體
- 21. Corona SDK - 如何檢測非物理體上的碰撞?
- 22. FLEX:我如何檢測物體之間的視覺碰撞?
- 23. 碰撞檢測代碼工作後,這如何反彈物體?
- 24. 如何檢測此JavaScript遊戲的物體碰撞
- 25. 在不干擾物理的情況下檢查兩個物體的碰撞(Box2D)
- 26. 檢查形狀與JavaFX的碰撞
- 27. 無物理碰撞
- 28. 如何讓pygame檢查兩幅圖像是否碰撞?
- 29. 當彼此碰撞時移開物體
- 30. 兩個物體之間的碰撞
3D或2D對撞機?你至少應該把你在你的問題中嘗試過的東西放進去。還要添加該語言的標籤。 – Programmer