2016-04-01 62 views
0

我正在學習創建一個簡單的fps遊戲統一問題是,碰撞不會自我更新,例如最初當我的球員在地面上控制檯通過「Debug.log collision.gameObject)「,但是當它與其他對象相交時,如立方體控制檯將打印出」立方體「,但當我離開它時,控制檯不會變回」地板「爲什麼?統一碰撞未被檢測到

我使用transform.translate移動,跳躍和使用方法OnCollisionEnter碰撞檢測

+0

探索:CollisionStay,CollissionEnter,CollisonExit。物體是否離開地面? – Catwood

回答

2

OnCollisionEnter只有當對象進入對撞機被觸發。

A)當發生OnCollisionEnter時,通過添加所有遇到的對象列表,並在發生OnCollisionExit時刪除所有遇到的對象。然後,無論何時您需要確保您在「地板」上,請在列表中查看它。

B)使用OnCollisionStay和每一幀,如果你觸摸「地板」,你會得到通知。

1

記住一件事,你想碰撞的另一個物體需要有一個碰撞組件,並確認它。加入之前的答案。