Unity3D 中的碰撞事件

Collision Events in Unity3D

我注意到当两个具有 Collider2D 组件的对象接触时,OnCollisionEnter2D 不会触发。它仅在其中一个附有 RigidBody 时触发。这对我来说似乎很奇怪,因为 Unity 编辑器本身说用静态碰撞器代替不移动的 RigidBody 对于性能来说要好得多。那为什么Unity不允许两个带有静态碰撞器的游戏对象在接触时触发碰撞事件呢?

当然,静态碰撞器性能更高,但正如字面意思:它们是 静态
运动需要物理计算,因此需要一个刚体(它包含有关速度等的信息)。这实际上在此处正常碰撞的文档中说明 http://docs.unity3d.com/ScriptReference/Collider.OnCollisionEnter.html