Collider.layerOverridePriority

public int layerOverridePriority;

描述

分配给此 Collider 的决策优先级,当关于 Collider 是否可以与另一个 Collider 接触存在冲突决策时使用。

层碰撞矩阵定义了哪些层可以接触其他层。此外,您还可以根据每个 Collider 或针对附加到特定 RigidbodyArticulationBody 的所有 Collider 包含和排除层。任何接触都涉及两个不同的 Collider 实例。不幸的是,这会导致一个 Collider 决定它应该接触另一个 Collider,但另一个 Collider 决定它不应该接触。有一些规则来决定如何处理这些情况。

两个 Collider(这里分别称为 A 和 B)之间做出决定的规则按以下顺序进行

  1. 如果 A 和 B 都做出相同的决定,则使用该决定。
  2. 如果只有 A 或 B 使用层包含或排除覆盖,则使用指定了包含或排除覆盖的 A 或 B 的决定。
  3. 如果 A 和 B 都使用层包含或排除覆盖,则使用具有较高 Collider.layerOverridePriority 的 A 或 B 的决定。
  4. 如果 A 和 B 具有相同的 Collider.layerOverridePriority,则决定将是不创建接触。

其他资源:Collider.includeLayersCollider.excludeLayersRigidbody.includeLayersRigidbody.excludeLayersArticulationBody.includeLayersArticulationBody.excludeLayers


Did you find this page useful? Please give it a rating: