Unity 十三 碰撞条件
在 unity 里面要想实现碰撞,需要满足两个条件。 两个物体都具有碰撞组件。 运动的组件拥有刚体。 对于第一条:碰撞组件有很多, 针对不同的形状有不同的Collider 。其中 Box Collider 是六个面针对的是立方体等,如果不算2d 的 Collider,Box Collider 的面数是最少的,下面还有Capsule Collider 胶囊体,Sphere Collider 球体的。其中针对不规则的物体可以使用 Mesh Collider,比如说坦克,石头等。 如何在程序里检测到碰撞,Unity 已经给了相应的方法。 当两个碰撞的物体,其中一个勾选上 Is Trigger 时,会触发:OnTriggerEnter、OnTriggerStay、OnTriggerExit 当不勾选Is Trigger 时,会触发:OnCollisionEnter、OnCollisionStay、OnCollisionExit。 看上面的英语,字面意思就是, Enter碰撞开始,Stay 碰撞保持,Exit 碰撞结束。 每个方法都有一个参数Collider other,这个代表与它发生碰撞的另外一个物体。 private void OnTriggerEnter(Collider other) { Debug.Log("OnTriggerEnter:::"+other.transform