Physics2D.BoxCast
Declaration
public static RaycastHit2D BoxCast(Vector2 origin, Vector2 size, float angle, Vector2 direction, float distance = Mathf.Infinity, int layerMask = Physics2D.AllLayers, float minDepth = -Mathf.Infinity, float maxDepth = Mathf.Infinity);Параметры
| Параметр | Описание |
|---|---|
| происхождение | Точка в пространстве 2D, где начинается коробка. |
| размер | Размер коробки. |
| угол | Угол коробки (в градусах). |
| направление | Вектор, представляющий направление коробки. |
| расстояние | Максимальное расстояние, на которое можно бросить коробку. |
| layerMask | Фильтр для обнаружения коллайдеров только на определенных слоях. |
| minDepth | Включить только объекты с координатой Z (глубиной), большей или равной этому значению. |
| maxDepth | Включить только объекты с координатой Z (глубиной) меньше или равной этому значению. |
Возвращаемое значение
RaycastHit2D Возвращаются результаты отливки.
Описание
Бросает коробку на Коллайдеры в Scene, возвращая первую Collider, которая соприкоснется с ней.
A BoxCast Концептуально это как перетаскивание коробки через Scene в определенном направлении. Любой объект, контактирующий с коробкой, может быть обнаружен и сообщен.
Эта функция возвращает RaycastHit2D объект со ссылкой на Collider, на который попадает коробка (свойство Collider результата будет NULL, если ничего не попало). layerMask
может использоваться для выборочного обнаружения объектов только на определенных слоях (это позволяет применять обнаружение только к вражеским персонажам, например).
Возвратившиеся RaycastHit2D возвращает как точку, так и нормаль контакта, в котором коробка коснется Collider. Она также возвращает центроид, в котором коробка будет расположена для контакта в этой точке.
BoxCast имеет size Этот параметр определяет, насколько большой должен быть ящик. Ящик стреляет по миру. Чем больше ящик, тем больше GameObjects будет поражено.
BoxCast также имеет angle опция. Коробка, которая стреляет через элементы в игре может быть вращена. Это означает, что столкновение между BoxCast и GameObject может быть труднее наблюдать.
BoxCastПеременная .direction определяет, как Box перемещается в Game. Это переменная 2D, управляющая горизонтальным и вертикальным направлениями.
Distance контролирует, насколько далеко от origin Коробка может взаимодействовать со многими Colliders В этих случаях ближайшая точка Collider2D предоставляет значения, установленные в RaycastHit2D переменная величина. Collider2D задан, то возвращается NULL.
NOTE: Все результаты отсортированы в порядке возрастания расстояния i.e. первый результат является ближайшим.
Дополнительные ресурсы: LayerMask class, RaycastHit2D class, BoxCastAll, DefaultRaycastLayers, IgnoreRaycastLayer, raycastsHitTriggers.
Declaration
public static int BoxCast(Vector2 origin, Vector2 size, float angle, Vector2 direction, ContactFilter2D contactFilter, RaycastHit2D[] results, float distance = Mathf.Infinity);Параметры
| Параметр | Описание |
|---|---|
| происхождение | Точка в пространстве 2D, где начинается коробка. |
| размер | Размер коробки. |
| угол | Угол коробки (в градусах). |
| направление | Вектор, представляющий направление коробки. |
| расстояние | Максимальное расстояние, на которое можно бросить коробку. |
| результаты | Массив для получения результатов. Размер массива определяет максимальное количество результатов, которые могут быть возвращены. |
| contactFilter | Контактный фильтр используется для фильтрации результатов по-разному, например, по маске слоя, глубине Z или нормальному углу. |
Возвращаемое значение
инт Возвращает число результатов, помещенных в массив results.
Описание
Бросает коробку на коллайдеры в Scene и возвращает все коллайдеры, которые контактируют с ней.
Эта функция возвращает число найденных контактов и помещает эти контакты в массив results. Результаты также могут быть отфильтрованы по contactFilter.
NOTE: Все результаты сортируются в порядке возрастания расстояния i.e. первый результат является ближайшим.
Дополнительные ресурсы: ContactFilter2D и RaycastHit2D.
Declaration
public static int BoxCast(Vector2 origin, Vector2 size, float angle, Vector2 direction, ContactFilter2D contactFilter, List<RaycastHit2D> results, float distance = Mathf.Infinity);Параметры
| Параметр | Описание |
|---|---|
| происхождение | Точка в пространстве 2D, где начинается коробка. |
| размер | Размер коробки. |
| угол | Угол коробки (в градусах). |
| направление | Вектор, представляющий направление коробки. |
| contactFilter | Контактный фильтр используется для фильтрации результатов по-разному, например, по маске слоя, глубине Z или нормальному углу. |
| результаты | Список для получения результатов. |
| расстояние | Максимальное расстояние, на которое можно бросить коробку. |
Возвращаемое значение
инт Возвращает число результатов, помещенных в список results.
Описание
Бросает коробку на коллайдеры в Scene и возвращает все коллайдеры, которые контактируют с ней.
Возвращаемое целое число представляет собой число результатов, записанных в список results. Список результатов будет изменен, если в нем не будет достаточно элементов для отображения всех результатов. Это предотвращает выделение памяти для результатов, когда список results не нуждается в изменении размера, и повышает производительность сбора мусора, когда запрос выполняется часто.
Результаты также могут быть отфильтрованы по contactFilter.
NOTE: Все результаты сортируются по возрастающему расстоянию i.e. первый результат является ближайшим.
Дополнительные ресурсы: ContactFilter2D и RaycastHit2D.