Unity3D 碰撞關係表 (轉)

幾個類型碰撞器:web

1. 靜態碰撞器: 就是隻有碰撞器,但沒有剛體的
2.剛體碰撞器: 帶Rigidbody的碰撞器,這個是最基本的碰撞器
3.運動學剛體碰撞器: 帶Rigidbody, 並且Rigidbody的IsKinematic打勾的,注意這個碰撞器是不能加力的,只能修改他的transform才能移動

Triggers 觸發器

僅須要選中Inspector中的IsTrigger屬性選擇框。觸發器不受物理引擎控制,當和一個觸發器發生碰撞時會發出三個獨特的觸發信息,爲了使兩個觸發器碰撞時發出碰撞事件,其中一個必須包含剛體.
 
今天遇到的一個狀況是:若是剛體碰撞器不動,靜態碰撞器去碰撞,則不會觸發任何信息,而若是靜態碰撞器不動,剛體碰撞器(包括運動學剛體碰撞器)去碰撞靜態碰撞器,則會觸發碰撞,若是是觸發器,則會觸發事件。因此下面的表格提供了觸發的條件,但主動性你們也還須要注意,否則要糾結一段時間的。

 

 
Collision detection occurs and messages are sent upon collision
碰撞後有碰撞檢測並有碰撞信息發出
  Static Collider
靜態碰撞器
Rigidbody Collider
剛體碰撞器
Kinematic 
Rigidbody Collider
運動學剛體碰撞器
Static 
Trigger Collider
靜態觸發碰撞器
Rigidbody 
Trigger Collider
剛體觸發碰撞器
Kinematic Rigidbody 
Trigger Collider
運動學剛體觸發碰撞器
Static Collider 靜態碰撞器   Y        
Rigidbody Collider 剛體碰撞器 Y Y Y      
Kinematic Rigidbody Collider 
運動學剛體碰撞器
  Y        
Static Trigger Collider
靜態觸發碰撞器
           
Rigidbody Trigger Collider
剛體觸發碰撞器
           
Kinematic Rigidbody Trigger Collider
運動學剛體觸發碰撞器
           
Trigger messages are sent upon collision
碰撞後有觸發信息
  Static Collider
靜態碰撞器
Rigidbody Collider
剛體碰撞器
Kinematic 
Rigidbody Collider
運動學剛體碰撞器
Static 
Trigger Collider
靜態觸發碰撞器
Rigidbody 
Trigger Collider
剛體觸發碰撞器
Kinematic Rigidbody 
Trigger Collider
運動學剛體觸發碰撞器
Static Collider 靜態碰撞器         Y Y
Rigidbody Collider 剛體碰撞器       Y Y Y
Kinematic Rigidbody Collider
運動學剛體碰撞器
      Y Y Y
Static Trigger Collider 靜態觸發碰撞器   Y Y   Y Y
Rigidbody Trigger Collider
剛體觸發碰撞器
Y Y Y Y Y Y
Kinematic Rigidbody Trigger Collider
運動學剛體觸發碰撞器
Y Y Y Y Y Y

 

 

觸發信息檢測:1.MonoBehaviour.OnTriggerEnter( Collider other )當進入觸發器2.MonoBehaviour.OnTriggerExit( Collider other )當退出觸發器3.MonoBehaviour.OnTriggerStay( Collider other )當逗留觸發器碰撞信息檢測:1.MonoBehaviour.OnCollisionEnter( Collision collisionInfo ) 當進入碰撞器2.MonoBehaviour.OnCollisionExit( Collision collisionInfo ) 當退出碰撞器3.MonoBehaviour.OnCollisionStay( Collision collisionInfo )  當逗留碰撞器

相關文章
相關標籤/搜索