当两个碰撞体接触时,物理系统会使用每个碰撞体的表面属性,来计算两个表面之间的总摩擦力和反弹。
在 Unity 中,可使用物理材质资源来控制这些参数。物理材质资源在 API 中由 PhysicsMaterial 类表示。
物理材质资源提供了两个属性:Friction Combine (PhysicsMaterial.frictionCombine) 和** Bounce Combine** (PhysicsMaterial.bounceCombine)。这些属性各自提供了四个选项来控制物理系统计算两个碰撞体之间的总摩擦力和反弹的方式:
| Priority | 属性 | 描述 |
|---|---|---|
| 1 | Maximum | 使用两个值中的最大值。 |
| 2 | Multiply | 使用一个值乘以另一个值的积。 |
| 3 | Minimum | 使用两个值中的最小值。 |
| 4 | Average | 使用两个值的平均值;即将两个值的总和除以 2。 |
Friction Combine 适用于动态摩擦力和静态摩擦力。
表中的属性按优先级顺序排列。在碰撞体对中,当碰撞体的物理材质资源具有不同的组合设置时,Unity 会考虑优先级。例如,如果将一个物理材质资源的 Friction Combine 设置为 Average,而将另一个物理材质资源的 Friction Combine 设置为 Maximum,Unity 将使用 Maximum 进行计算。