所谓带碰撞效果是指有物理效果,比如碰了要发生位移之类的。而检测是用在只是检测是否发生了碰撞。
比如一个足球游戏中,用碰撞的思路来判定足球是否出边线,我们会在边线附近摆一个碰撞体,当球碰到边线时,我们并不希望改变足球的运动,但有希望检测出球已出边线。这时候我们就不能用带碰撞效果,而是用碰撞检测。
带碰撞效果用OnCollisionXX
OnCollisionEnter(Collision col)
OnCollisionStay(Collision col)
OnCollisionExit(Collision col)
发生碰撞的条件:主动方必须有Rigidbody,发生碰撞的两个游戏对象必须有Collider,被动方对于RigidBody可又不可无,参数是表示被动方。
只是检测用OnTriggerXX
OnTriggerEnter(Collider other)
OnTriggerStay(Collider other)
OnTriggerExit(Collider other)
发生触发的条件:发生碰撞的物体两者其中之一有Rigidbody即可,发生碰撞的两个游戏对象必须有Collider,其中一方勾选IsTrigger即可,参数是表示被动方。
/blanrey/article/details/77460565
/zengbinsi/p/zengbinsi_unity3d_004.html