Version: 6000.3
语言: 中文
碰撞检测
基于层的碰撞检测

选择碰撞检测模式

碰撞当物理引擎检测到两个游戏对象的碰撞器接触或重叠时,当至少一个游戏对象具有刚体组件并且处于运动状态时,就会发生碰撞。更多信息
请参阅术语表
检波
定义物理形体(Rigidbody 或 ArticulationBody)用于检测碰撞的算法。不同的算法提供不同级别的准确性,但更准确的算法需要更多的计算资源。

有三种可用的算法,由四个表示碰撞检测Unity 执行的自动过程,用于确定具有刚体和碰撞器组件的移动游戏对象是否与任何其他碰撞器接触。更多信息
请参阅术语表
模式:

碰撞检测模式 算法 适用于 不适用于
离散 离散 - 缓慢移动的碰撞。 - 快速移动的碰撞。
连续投机 推测性CCD - 快速移动的碰撞。 - 一些快速移动的碰撞需要特别高的精度。
连续的 扫描 CCD - 需要高精度的快速移动线性碰撞。
- 仅与静态碰撞器碰撞的物理形体。
- 由于物理体旋转而发生的碰撞。
- 与移动碰撞器碰撞的物理物体。
连续动态 扫描 CCD - 需要高精度的快速移动线性碰撞。
- 与移动碰撞器碰撞的物理物体。
- 由于物理体旋转而发生的碰撞。

以下决策流可能为选择碰撞检测类型提供起点。它从计算量最少的模式开始,然后发展到计算量最大的模式。

  1. 首先尝试 Discrete
  2. 如果你发现在离散模式下错过了碰撞,请尝试 连续推测(Continuous Speculative)。
  3. 如果你在 连续推测(Continuous Speculative) 模式下发现错过的碰撞或错误的碰撞,请尝试 连续(Continuary) 以进行静态碰撞碰撞体 用于处理对象物理碰撞的不可见形状。碰撞体不需要与对象的网格体形状完全相同 - 在游戏中,粗略的近似值通常更有效且难以区分。更多信息
    请参阅术语表
    ,或“连续动态”(Continuous Dynamic) 表示与动态的碰撞刚体允许游戏对象受到模拟重力和其他力影响的组件。更多信息
    请参阅术语表
    碰撞器。

在某些情况下,你可能会发现物理性能依赖于碰撞检测模式和物理时间步长频率的组合。尝试两者并分析结果,以找到适合您项目的解决方案。

选择碰撞检测模式

要选择算法,请通过以下方式之一设置物理形体的 碰撞检测(Collision Detection) 属性:

碰撞检测
基于层的碰撞检测