Unity 6.3
0 онлайн 83 гостей 3 в системе
Вход

Collider.layerOverridePriority

Declaration

public int layerOverridePriority;

Описание

Приоритет решения, присвоенный этому Collider, используется, когда имеется противоречивое решение о том, может ли Collider связаться с другим Collider.

Матрица столкновений слоев определяет, какие слои могут контактировать с другими слоями. Кроме того, вы можете включать и исключать слои для Collider или для всех Collider, присоединенных к конкретному Rigidbody или ArticulationBody. Любой контакт включает в себя два различных экземпляра Collider. К сожалению, это может привести к тому, что один Collider решит, что он должен контактировать с другим Collider, но другой Collider решит, что он не должен. Существуют правила, определяющие, как обрабатывать эти ситуации.

Правила для принятия решения между двумя Collider, которые здесь обозначаются как A и B, делаются в следующем порядке:

  1. Если и А, и В принимают одно и то же решение, то используют это решение.
  2. Если переопределение включения или исключения слоёв использует только A или только B, применяется решение того из них, у которого это переопределение задано.
  3. Если и A, и B используют переопределение включения или исключения слоёв, применяется решение того из них, у которого выше Collider.layerOverridePriority.
  4. Если A и B имеют одинаковые Collider.layerOverridePriority, то решение будет не создавать контакт.

Дополнительные ресурсы: ,Collider.includeLayers,, ,Collider.excludeLayers,, ,Rigidbody.includeLayers,, ,Rigidbody.excludeLayers,, ,ArticulationBody.includeLayers,, ,ArticulationBody.excludeLayers,.