碰撞信息检测:
1.MonoBehaviour.OnCollisionEnter(Collision collision) 当进入碰撞器
2.MonoBehaviour.OnCollisionExit(Collision collision) 当退出碰撞器
3.MonoBehaviour.OnCollisionStay(Collision collision) 当逗留碰撞器
Colliosion 碰撞信息 Collier 碰撞体;
当两个物体相接触时到底执行OnTriggerEnter还是执行OnCOllisionEnter:
当我们在检视窗口未勾选碰撞器的Is Trigger选项时,进入OnSllisionEnter,物体被撞飞;
如果将碰撞器Is Trigger属性选中,再次接触,进入OnTriggerEnter,之后会相互穿过,没有发生碰撞;
unity3d中的碰撞器和触发器的区别:
碰撞器是触发器的载体,而触发器只是碰撞器身上的一个属性
当Is Trigger=false时,碰撞器根据物理引擎引发碰撞,产生碰撞的效果,可以调用OnCollisionEnter/Stay/Exit函数;
当Is Trigger=true时,碰撞器被物理引擎所忽略,没有碰撞效果,可以调用OnTriggerEnter/Stay/Exit函数。
用处:
如果既要检测到物体的接触又不想让碰撞检测影响物体移动或要检测一个物件是否经过空间中的某个区域这时就可以用到触发器
例子:
碰撞器:汽车被撞飞、皮球掉在地上又弹起效果
触发器:人站在靠近门的位置门自动打开效果