W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
在 Unity 3D 中,檢測碰撞發(fā)生的方式有兩種:
在很多游戲引擎或工具中都有觸發(fā)器,它被用來觸發(fā)事件。
例如,在游戲中的劇情里,玩家通過某個任務道具召喚了任務相關的 NPC 或者可擊殺的怪物,就可以用觸發(fā)器來實現(xiàn)。
當綁定了碰撞體的游戲對象進入觸發(fā)器區(qū)域時,會運行觸發(fā)器對象上的 OnTriggerEnter 函數(shù)
,同時需要在檢視面板中的碰撞體組件中勾選 IsTrigger 復選框
。
觸發(fā)信息檢測使用以下 3 個函數(shù):
MonoBehaviour.OnTriggerEnter
(Collider collider),當進入觸發(fā)器時觸發(fā)。MonoBehaviour.OnTriggerExit
(Collider collider),當退出觸發(fā)器時觸發(fā)。MonoBehaviour.OnTriggerStay
(Collider collider),當逗留在觸發(fā)器中時觸發(fā)。Unity 3D 中的碰撞體和觸發(fā)器的區(qū)別在于:
- 碰撞體是觸發(fā)器的載體。
- 觸發(fā)器只是碰撞體的一個屬性。
如果既想要檢測到物體的接觸,又不想讓碰撞檢測影響物體移動,或者要檢測一個物體是否經(jīng)過空間中的某個區(qū)域,這時就可以用到觸發(fā)器。
例如,碰撞體適合模擬汽車被撞飛、皮球掉在地上又彈起的效果,而觸發(fā)器適合模擬人站在靠近門的位置時門自動打開的效果。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: