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