碰撞检测
参考:https://blog.csdn.net/weixin_50642897/article/details/108791009
unity中的两个物体要想发生碰撞,必须依赖于自身的碰撞器组件(Collider),并且至少其中一个物体必须附有刚体组件(Rigidbody),其中附带碰撞检测脚本的物体必须有刚体组件。
unity中的碰撞检测,主要有两种接口函数,一种是碰撞信息检测,一种是触发信息检测(在检视面板碰撞器组件中勾选IsTrigger属性选择框,则为触发器模式),这两种接口函数具体为:
碰撞信息检测:
1.MonoBehaviour.OnCollisionEnter(Collision collisionInfo) 只有进入碰撞器时,调用该方法,在两个物体离开碰撞器之前只调用一次
2.MonoBehaviour.OnCollisionStay(Collision collisionInfo) 在两物体保持接触时调用,在两个物体碰撞器离开之前每帧调用一次
3.MonoBehaviour.OnCollisionExit(Collision collisionInfo) 只有两个物体碰撞器离开时,调用该方法一次 触发信息检测
例如:2d项目
物体1:Rigidbody 2D、Box Collider 2D
物体2:Rigidbody 2D、