Объявление
public static RaycastHit2D[] CapsuleCastAll(Vector2 origin, Vector2 size, CapsuleDirection2D capsuleDirection, float angle, Vector2 direction, float distance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, float minDepth = -Mathf.Infinity, float maxDepth = Mathf.Infinity);Параметры
origin | Точка в двухмерном пространстве, где начинается капсула. |
size | Размер капсулы. |
capsuleDirection | Направление капсулы. |
angle | Угол наклона капсулы (в градусах). |
direction | Вектор, представляющий направление броска капсулы. |
distance | Максимальное расстояние, на которое можно забросить капсулу. |
layerMask | Фильтр для обнаружения коллайдеров только на определенных слоях. |
minDepth | Включайте только объекты с координатой Z (глубиной) больше этого значения. |
maxDepth | Включайте только объекты с координатой Z (глубиной) меньше этого значения. |
Возвращает
RaycastHit2D[] Результаты броска возвращены.
Описание
Выбрасывает капсулу на коллайдеры в сцене, возвращая все коллайдеры, которые с ней соприкасаются.
CapsuleCast концептуально подобен перетаскиванию капсулы по сцене в определенном направлении. Любой объект, вступивший в контакт с капсулой, может быть обнаружен и сообщен об этом.
Эта функция похожа на функцию CapsuleCast, но вместо обнаружения только первого пораженного коллайдера возвращается массив всех коллайдеров на пути капсулы. . Коллайдеры в массиве отсортированы по расстоянию от исходной точки. layerMask можно использовать для выборочного обнаружения объектов только на определенных слоях (например, это позволяет применять обнаружение только к вражеским персонажам).
Возвращенный RaycastHit2D возвращает и точку, и нормаль контакта, где капсула коснется коллайдера. Он также возвращает центроид, в котором капсула должна быть расположена для ее контакта в этой точке.
Смотрите так же: ContactFilter2D, LayerMask class, RaycastHit2D class, CapsuleCast, CapsuleCastNonAlloc, DefaultRaycastLayers, IgnoreRaycastLayer, raycastsHitTriggers.