OnCollisionEnter方法触发条件
- 碰撞双方必须是碰撞体(Conllision)
- 碰撞的主动方必须是刚体(Rigidbody)
- 刚体不能勾选IsKinematic
- 碰撞体不能勾选IsTrigger
注意:OnCollisionEnter方法的形参对象指的是碰撞双方中没有携带OnCollisionEnter方法的一方
OnTriggerEnter方法触发条件
- 碰撞双方必须是碰撞体(Conllision)
- 碰撞双方其中一个碰撞体必须勾选IsTrigger选项
- 碰撞双方其中一个方必须是刚体(Rigidbody)
- 刚体的IsKinematic选项可以勾选也可以不勾选
注意:只要满足上面两个条件,不管是谁主动都会触发
总结:
相同点:
1 碰撞双方都必须是碰撞体
2 都要有刚体参与
3 形参对象均表示没有携带OnCollisionEnter或OnTriggerEnter脚本的一方
不同点:
1 OnTriggerEnter要求碰撞体的任意一方必须勾选IsTigger选项,OnCollisionEnter则要求全不勾选
2 OnTriggerEnter对刚体的IsKinematic项没有要求,OnCollisionEnter则要求不能勾选
3 OnTriggerEnter对刚体挂在碰撞双方的哪一方没有要求,而OnCollisionEnter则要求挂在碰撞的主动方
文章转自https://blog.csdn.net/qq_15267341/article/details/53489957