ContactFilter2D
структура в UnityEngine
Выполнено в:UnityEngine.Physics2DModule
Описание
Набор параметров для фильтрации результатов контакта. Определить угол, ссылаясь на их местоположение в мировом пространстве, где 0 градусов параллелен положительной оси x, 90 градусов параллелен положительной оси y, 180 градусов параллелен отрицательной оси x, и 270 градусов параллелен отрицательной оси y.
Используйте контактный фильтр для точного контроля того, какие результаты контакта будут возвращены. Это устраняет необходимость фильтрации результатов позже, это быстрее и удобнее.
Если вы используете функцию, которая требует ContactFilter2D, но вы не хотите выполнять никакую фильтрацию, то используйте ContactFilter2D.noFilter.
Для получения дополнительной информации об использовании ContactFilter2D с cast, см.: Physics2D.CircleCast, Physics2D.BoxCast, Physics2D.CapsuleCast, Physics2D.Linecast, Physics2D.Raycast, Collider2D.Raycast, Collider2D.Cast и Rigidbody2D.Cast.
Дополнительную информацию об использовании ContactFilter2D с перекрывающимися участками см. в: Physics2D.OverlapPoint, Physics2D.OverlapCircle, Physics2D.OverlapBox, Physics2D.OverlapArea, Physics2D.OverlapCapsule, Physics2D.OverlapCollider, Rigidbody2D.OverlapCollider и Collider2D.OverlapCollider.
Дополнительную информацию об использовании ContactFilter2D с контактами см. в: Physics2D.GetContacts, Collider2D.GetContacts, Rigidbody2D.GetContacts, Physics2D.IsTouching, Rigidbody2D.IsTouching и Collider2D.IsTouching.
Статические свойства
| Свойство | Описание |
|---|---|
| noFilter | Возвращает новый контактный фильтр в состоянии, в котором он не фильтрует контакты. |
| NormalAngleUpperLimit | Константа максимального используемого нормального угла, равная 359,9999f. |
Свойства
| Свойство | Описание |
|---|---|
| isFiltering | Определяет по текущему состоянию контактного фильтра, будет ли он вообще что-либо фильтровать. |
| layerMask | Настраивает контактный фильтр для фильтрации результатов, которые включают только Collider2D на слоях, определенных маской слоя. |
| maxDepth | Настраивает контактный фильтр для фильтрации результатов, чтобы включать только Collider2D с координатой Z (глубиной) меньше этого значения. |
| maxNormalAngle | Настраивает фильтр контактов для фильтрации результатов, чтобы включать только контакты с углами нормали столкновения, которые меньше этого угла. |
| minDepth | Настраивает контактный фильтр для фильтрации результатов, чтобы включать только Collider2D с координатой Z (глубиной) большей, чем это значение. |
| minNormalAngle | Настраивает фильтр контактов для фильтрации результатов, чтобы включать только контакты с углами нормали столкновения, которые больше этого угла. |
| useDepth | Настраивает контактный фильтр для фильтрации результатов по глубине с использованием minDepth и maxDepth. |
| useLayerMask | Настраивает фильтр контакта на фильтрацию результатов по маске слоя. |
| useNormalAngle | Настраивает контактный фильтр для фильтрации результатов по нормальному углу столкновения с использованием minNormalAngle и maxNormalAngle. |
| useOutsideDepth | Настраивает фильтр контактов на фильтрацию в диапазоне minDepth и maxDepth или за его пределами. |
| useOutsideNormalAngle | Настраивает фильтр контактов на фильтрацию в диапазоне minNormalAngle и maxNormalAngle или за его пределами. |
| useTriggers | Наборы для фильтрации результатов контакта на основе участия коллайдера триггера. |
Открытые методы
| Метод | Описание |
|---|---|
| ClearDepth | Отключает глубинную фильтрацию, установив useDepth в false. Соответствующие значения minDepth и maxDepth не изменяются. |
| ClearLayerMask | Отключает фильтрацию маски слоя, установив useLayerMask в false. Соответствующее значение layerMask не изменяется. |
| ClearNormalAngle | Отключает фильтрацию обычного угла, установив useNormalAngle в false. Соответствующие значения minNormalAngle и maxNormalAngle не изменяются. |
| IsFilteringDepth | Проверяет, находится ли Transform для obj в диапазоне глубины для фильтрации. |
| IsFilteringLayerMask | Проверяет, включено ли GameObject.layer для obj в layerMask для фильтрации. |
| IsFilteringNormalAngle | Проверяет, находится ли угол нормали в пределах диапазона углов нормали для фильтрации. |
| IsFilteringTrigger | Проверяет, является ли коллайдер триггером и должен ли быть отфильтрован по useTriggers для фильтрации. |
| SetDepth | Задает свойства фильтров minDepth и maxDepth и включает фильтрацию глубины, установив значение useDepth на true. |
| SetLayerMask | Устанавливает свойство фильтра layerMask с помощью параметра layerMask, а также включает фильтрацию маск слоев, установив useLayerMask на true. |
| SetNormalAngle | Устанавливает свойства фильтров minNormalAngle и maxNormalAngle и включает фильтрацию обычного угла, установив useNormalAngle на true. |