Physics2D.OverlapArea
Declaration
public static Collider2D OverlapArea(Vector2 pointA, Vector2 pointB, int layerMask = DefaultRaycastLayers, float minDepth = -Mathf.Infinity, float maxDepth = Mathf.Infinity);Параметры
| Параметр | Описание |
|---|---|
| pointA | Один из углов прямоугольника. |
| pointB | По диагонали напротив точки A в углу прямоугольника. |
| layerMask | Фильтр для проверки объектов только на определенных слоях. |
| minDepth | Включить только объекты с координатой Z (глубиной), большей или равной этому значению. |
| maxDepth | Включить только объекты с координатой Z (глубиной) меньше или равной этому значению. |
Возвращаемое значение
Collider2D Collider перекрывает область.
Описание
Проверяет, находится ли Collider в прямоугольной области.
Прямоугольник определяется двумя диагонально противоположными угловыми координатами в мировом пространстве. Вы можете думать об этом как о верхнем левом и нижнем правом углу, но тест все равно будет работать, если порядок точек будет изменен. layerMask позволяет тесту проверять только объекты на определенных слоях.
Хотя ось Z не имеет значения для отображения или столкновений в 2D, вы можете использовать minDepth и maxDepth параметры для фильтрации объектов на основе их координат Z. Если более одного Collider попадает в пределы зоны, то возвращается точка с наименьшим значением координат Z. Если в зоне нет коллайдеров, возвращается нуль.
Дополнительные ресурсы: OverlapAreaAll.
Declaration
public static int OverlapArea(Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter, Collider2D[] results);Параметры
| Параметр | Описание |
|---|---|
| pointA | Один из углов прямоугольника. |
| pointB | По диагонали напротив точки A в углу прямоугольника. |
| contactFilter | Контактный фильтр используется для фильтрации результатов по-разному, например, по маске слоя, глубине Z. Обратите внимание, что нормальный угол не используется для тестирования перекрытия. |
| результаты | Массив для получения результатов. Размер массива определяет максимальное количество результатов, которые могут быть возвращены. |
Возвращаемое значение
инт Возвращает число результатов, помещенных в массив results.
Описание
Проверяет, находится ли Collider в прямоугольной области.
Эта функция возвращает число обнаруженных коллайдеров и помещает их в массив results.
Declaration
public static int OverlapArea(Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter, List<Collider2D> results);Параметры
| Параметр | Описание |
|---|---|
| pointA | Один из углов прямоугольника. |
| pointB | По диагонали напротив точки A в углу прямоугольника. |
| contactFilter | Контактный фильтр используется для фильтрации результатов по-разному, например, по маске слоя, глубине Z. Обратите внимание, что нормальный угол не используется для тестирования перекрытия. |
| результаты | Список для получения результатов. |
Возвращаемое значение
инт Возвращает число результатов, помещенных в список results.
Описание
Проверяет, находится ли Collider в прямоугольной области.
Возвращаемое целое число — это число результатов, записанных в список results. Список результатов будет изменен, если он не содержит достаточно элементов для отображения всех результатов. Это предотвращает выделение памяти для результатов, когда список results не нуждается в изменении размера, и повышает производительность сбора мусора, когда запрос выполняется часто.