Physics2D.CircleCast
Declaration
public static RaycastHit2D CircleCast(Vector2 origin, float radius, Vector2 direction, float distance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, float minDepth = -Mathf.Infinity, float maxDepth = Mathf.Infinity);Параметры
| Параметр | Описание |
|---|---|
| происхождение | Точка в пространстве 2D, где начинается окружность. |
| радиус | Радиус окружности. |
| направление | Вектор, представляющий направление окружности. |
| расстояние | Максимальное расстояние, на которое можно бросить круг. |
| layerMask | Фильтр для обнаружения коллайдеров только на определенных слоях. |
| minDepth | Включить только объекты с координатой Z (глубиной), большей или равной этому значению. |
| maxDepth | Включить только объекты с координатой Z (глубиной) меньше или равной этому значению. |
Возвращаемое значение
RaycastHit2D Возвращаются результаты отливки.
Описание
Бросает круг на Коллайдеры в Scene, возвращая первого Collider, который с ним контактирует.
A CircleCast Концептуально это как перетаскивание круга через Scene в определенном направлении. Любой объект, контактирующий с кругом, может быть обнаружен и сообщен.
Эта функция возвращает RaycastHit2D объект со ссылкой на Collider, на который попадает коробка (свойство Collider результата будет NULL, если ничего не попало). layerMask может использоваться для выборочного обнаружения объектов только на определенных слоях (это позволяет применять обнаружение только к вражеским персонажам, например).
Возвратившиеся RaycastHit2D возвращает как точку, так и нормаль контакта, где окружность коснется Collider. Она также возвращает центроид, где окружность будет расположена для контакта в этой точке.
NOTE: Все результаты отсортированы в порядке возрастания расстояния i.e. первый результат является ближайшим.
Дополнительные ресурсы: LayerMask class, RaycastHit2D class, :CircleCastAll, DefaultRaycastLayers, IgnoreRaycastLayer, raycastsHitTriggers.
Declaration
public static int CircleCast(Vector2 origin, float radius, 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 CircleCast(Vector2 origin, float radius, Vector2 direction, ContactFilter2D contactFilter, List<RaycastHit2D> results, float distance = Mathf.Infinity);Параметры
| Параметр | Описание |
|---|---|
| происхождение | Точка в пространстве 2D, где начинается окружность. |
| радиус | Радиус окружности. |
| направление | Вектор, представляющий направление окружности. |
| contactFilter | Контактный фильтр используется для фильтрации результатов по-разному, например, по маске слоя, глубине Z или нормальному углу. |
| результаты | Список для получения результатов. |
| расстояние | Максимальное расстояние, на которое можно бросить круг. |
Возвращаемое значение
инт Возвращает число результатов, помещенных в список results.
Описание
Бросает круг на коллайдеры в Scene, возвращая все коллайдеры, которые контактируют с ним.
Возвращаемое целое число представляет собой число результатов, записанных в список results. Список результатов будет изменен, если в нем не будет достаточно элементов для отображения всех результатов. Это предотвращает выделение памяти для результатов, когда список results не нуждается в изменении размера, и повышает производительность сбора мусора, когда запрос выполняется часто.
Результаты также могут быть отфильтрованы по contactFilter.
NOTE: Все результаты сортируются по возрастающему расстоянию i.e. первый результат является ближайшим.
Дополнительные ресурсы: ContactFilter2D и RaycastHit2D.