基于层的碰撞检测        

在 Unity 3.x 中,我们引入了基于层的碰撞检测。它是让游戏对象 (Game Object) 与另一个绑定到特定层的特定游戏对象 (Game Object) 碰撞的一种方式。


与自己的层碰撞的对象。

在上图中,您能看见 6 个游戏对象 (GameObject)(3 个平面、3 个立方体)和右侧的“碰撞矩阵”(Collision Matrix),该矩阵说明哪些对象 (Object) 可以与哪层碰撞。在该示例中,我们将“碰撞矩阵”(Collision Matrix) 设置为仅属于相同层的游戏对象 (GameObject) 可以碰撞。

设置游戏对象 (GameObject) 来基于层检测碰撞

  1. 选择游戏对象 (Game Object) 将所属的层

  2. 对每个游戏对象 (Game Object) 重复第 1 步,直到将所有游戏对象 (Game Object) 分配给层。

  3. 通过单击编辑 (Edit) -> 工程设置 (Project Settings) -> 物理 (Physics),打开物理偏好设置面板 (Physics Preference Panel)。

  4. 通过勾选来选择“碰撞矩阵”(Collision Matrix) 上哪些层将与其他层交互。


,