Объявление
public static RaycastHit2D[] LinecastAll(Vector2 start, Vector2 end, int layerMask = DefaultRaycastLayers, float minDepth = -Mathf.Infinity, float maxDepth = Mathf.Infinity);Параметры
start | Начальная точка линии в мировом пространстве. |
end | Конечная точка линии в мировом пространстве. |
layerMask | Фильтр для обнаружения коллайдеров только на определенных слоях. |
minDepth | Включайте только объекты с координатой Z (глубиной) больше или равной этому значению. |
maxDepth | Включать только объекты с координатой Z (глубиной) меньше или равной этому значению. |
Возвращает
RaycastHit2D[] Результаты броска возвращены.
Описание
Отбрасывает линию на коллайдеры в сцене.
linecast — это воображаемая линия между двумя точками в мировом пространстве. Любой объект, вступивший в контакт с лучом, может быть обнаружен и отправлен в отчет.
Эта функция аналогична функции Linecast, за исключением того, что сообщаются все коллайдеры, соприкасающиеся с линией. Предполагается, что линия проходит от начальной до конечной точки; Коллайдеры будут размещены в возвращаемом массиве в порядке удаления от начала строки.
Линейные трансляции полезны для определения линий прямой видимости, целей, пораженных огнестрельным оружием, и для многих других целей в игровом процессе.
Обратите внимание, что эта функция выделит память для возвращенного массива RaycastHit2D. Вы можете использовать LinecastNonAlloc, чтобы избежать этих накладных расходов, если вам нужно часто делать прямые трансляции.
Кроме того, это также обнаружит коллайдер(ы) в начале строки. В этом случае линия начинается внутри коллайдера и не пересекает поверхность коллайдера. Это означает, что нормаль столкновения не может быть вычислена, и в этом случае возвращаемая нормаль столкновения устанавливается на обратную проверяемому вектору линии. Это легко обнаружить, поскольку такие результаты всегда имеют долю RaycastHit2D, равную нулю.
Смотрите так же: LayerMask class, RaycastHit2D class, Linecast, LinecastNonAlloc, DefaultRaycastLayers, IgnoreRaycastLayer, raycastsHitTriggers.