unity
Unity2D碰撞OnColliderEnter 和 OnTriggerEnter 区别
# 碰撞检测与触发器 假设两个物体A和B。 两者都有碰撞体collider(Box Collider,Sphere Collider,Capsule Collider等)。 A和B都有刚体(Rigidbody)。 当A或B中有一个勾选isTrigger时,或者两者都勾选isTrigger时,A和B都可以进入OnTriggerEnter方法,但不可进入OnCollisionEnter方法。 当A和B都不勾选isTrigger时,A和B能进入OnCollisionEnter方法,但不能进入OnTriggerEnter方法。 **结论:** - OnCollisionEnter方法必须是在两个碰撞物体都不勾选isTrigger的前提下才能进入。反之只要勾选一个isTrigger那么就能进入OnTriggerEnter方法。 - OnCollisionEnter和OnTriggerEnter是冲突的,不能同时存在的。 ## 选择OnCollisionEnter和OnTriggerEnter 如果想实现两个刚体物理的实际碰撞效果时使用OnCollisionEnter。Unity引擎会自动处理刚体碰撞的效果。 如果想在两个物体碰撞后自己处理碰撞事件,则使用OnTriggerEnter。