一,要产生碰撞必须为游戏对象添加刚体(Rigidbody)和碰撞器,刚体可以让物体在物理影响下运动。
二,两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体。
三,在unity3d中,能检测碰撞发生的方式有两种,一种是利用碰撞器,另一种则是利用触发器。
1>碰撞器:一群组件,它包含了很多种类,比如:Box Collider(盒碰撞体),Mesh Collider(网格碰撞体)等,这些碰撞器应用的场合不同,但都必须加到GameObjecet身上,碰撞检测,但是效果发生物理碰撞(如小球撞到物体时,会停顿的情况),碰撞触发的方法,代码如下:
void OnCollisionEnter(Collision collision) { }
2>触发器,不会发生物理碰撞,会在两个物体中穿过,需在collider中勾选is trigger,碰撞触发的方法,代码如下
void OnTriggerEnter(Collider collider) { }