1. 程式人生 > >Unity碰撞檢測小結

Unity碰撞檢測小結

兩個碰撞體發生碰撞所需條件: 1. 兩個物體所在的層(layer),在物理層上能夠發生碰撞 2. 兩個物體均需要碰撞體(Collider)元件,最少一方需要剛體(Rigidbody) 碰撞函式: void OnCollisionStay(Collision info); //檢測是否發生碰撞,每幀執行 void OnCollisionEnter(Collision info); //檢測是否進入碰撞,發生碰撞是執行 void OnCollisionExit(Collision info); //碰撞離開時執行 *註釋: 1. 角色控制器(CharacterController)同時具備碰撞體和剛體兩種屬性

兩個碰撞體發生觸發所需條件: 1,2條同上,此外必須至少一方勾選IsTrigger

觸發函式: void OnTriggerStay(Collider other) void OnTriggerEnter(Collider other); void OnTriggerExit(Collider other) *註釋:角色控制器只能做為碰撞器,無法作為觸發器