Объявление
public Collider2D OverlapArea(Vector2 pointA, Vector2 pointB, int layerMask = Physics2D.DefaultRaycastLayers);public Collider2D OverlapArea(Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter);
Параметры
pointA | Один угол прямоугольника. |
pointB | Угол прямоугольника, диагонально противоположный углу точки A. |
layerMask | Фильтр для проверки объектов только на определенных слоях. |
contactFilter | Контактный фильтр, используемый для различной фильтрации результатов, например, по маске слоя и глубине Z. Обратите внимание, что нормальный угол не используется для проверки перекрытия. |
Возвращает
Collider2D Коллайдер перекрывает область.
Описание
Проверяет область (неповернутый прямоугольник) на наличие коллайдеров в PhysicsScene2D, возвращая только первое пересечение.
Область перекрытия концептуально похожа на просмотр сцены через прямоугольную форму, чтобы определить, что можно увидеть. Любой увиденный Collider2D может быть обнаружен и отправлен в отчет.
Эта функция возвращает Collider2D, который перекрывает область, или NULL, если ничего не перекрывается.
Маска layerMask может использоваться для выборочного обнаружения объектов только на определенных слоях (например, это позволяет применять обнаружение только к вражеским персонажам). Перегрузки этого метода, использующие contactFilter
, могут фильтровать результаты с помощью параметров, доступных в ContactFilter2D.
Смотрите так же: PhysicsScene2D, LayerMask, Physics2D.DefaultRaycastLayers, Physics2D.IgnoreRaycastLayer, Physics2D.queriesHitTriggers.
Объявление
public int OverlapArea(Vector2 pointA, Vector2 pointB, Collider2D[] results, int layerMask = Physics2D.DefaultRaycastLayers);public int OverlapArea(Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter, Collider2D[] results);
Параметры
pointA | Один угол прямоугольника. |
pointB | Угол прямоугольника по диагонали напротив точки A угла. |
results | Массив для получения результатов. Размер массива определяет максимальное количество результатов, которые могут быть возвращены. |
layerMask | Фильтр для проверки объектов только на определенных слоях. |
contactFilter | Контактный фильтр, используемый для различной фильтрации результатов, например, по маске слоя и глубине Z. Обратите внимание, что нормальный угол не используется для проверки перекрытия. |
Возвращает
int Возвращает количество результатов, помещенных в массив results
.
Описание
Проверяет область (неповернутый прямоугольник) на наличие коллайдеров в PhysicsScene2D, возвращая все пересечения.
Область перекрытия концептуально похожа на просмотр сцены через прямоугольную форму, чтобы определить, что можно увидеть. Любой увиденный Collider2D может быть обнаружен и отправлен в отчет.
Эта функция возвращает массив Collider2D, перекрывающих область.
Возвращаемое целочисленное значение — это количество объектов, пересекающих область (возможно, ноль), но размер массива результатов не будет изменен, если он не содержит достаточного количества элементов для отчета обо всех результатах. Значение этого заключается в том, что для результатов не выделяется память, что повышает производительность сборки мусора. Обратите внимание, что вы всегда получите нулевой результат, если передадите пустой массив.
Маска layerMask может использоваться для выборочного обнаружения объектов только на определенных слоях (например, это позволяет применять обнаружение только к вражеским персонажам). Перегрузки этого метода, использующие contactFilter
, могут фильтровать результаты с помощью параметров, доступных в ContactFilter2D.
Смотрите так же: PhysicsScene2D, LayerMask, Physics2D.DefaultRaycastLayers, Physics2D.IgnoreRaycastLayer, Physics2D.queriesHitTriggers.
Объявление
public int OverlapArea(Vector2 pointA, Vector2 pointB, ContactFilter2D contactFilter, ListПараметры
pointA | Один угол прямоугольника. |
pointB | Угол прямоугольника, диагонально противоположный углу точки A. |
contactFilter | Контактный фильтр, используемый для различной фильтрации результатов, например, по маске слоя и глубине Z. Обратите внимание, что нормальный угол не используется для проверки перекрытия. |
results | Список для получения результатов. |
Возвращает
int Возвращает количество результатов, помещенных в список results
.
Описание
Проверяет область (неповернутый прямоугольник) на наличие коллайдеров в PhysicsScene2D, возвращая все пересечения.
Область перекрытия концептуально похожа на просмотр сцены через прямоугольную форму, чтобы определить, что можно увидеть. Любой увиденный Collider2D может быть обнаружен и отправлен в отчет.
Эта функция возвращает список Collider2D, перекрывающих область.
Целое возвращаемое значение — это количество результатов, записанных в список results
. Список результатов будет изменен, если он не содержит достаточного количества элементов для отчета обо всех результатах. Это предотвращает выделение памяти для результатов, когда нет необходимости изменять размер списка results
, и повышает производительность сборки мусора при частом выполнении запроса.
Результаты также можно отфильтровать с помощью contactFilter
.