Объявление
public static RaycastHit[] SphereCastAll(Vector3 origin, float radius, Vector3 direction, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);Параметры
origin | Центр сферы в начале развертки. |
radius | Радиус сферы. |
direction | Направление, в котором перемещать сферу. |
maxDistance | Максимальная длина развертки. |
layerMask | Маска слоя, используемая для выборочного игнорирования коллайдеров при создании сферы. |
queryTriggerInteraction | Указывает, должен ли этот запрос вызывать триггеры. |
Возвращает
RaycastHit[] Массив всех коллайдеров попал в развертку.
Описание
То же, что и Physics.SphereCast, но эта функция возвращает все совпадения, которые пересекает развертка сферы.
Отбрасывает сферу на все коллайдеры в сцене и возвращает подробную информацию о каждом коллайдере, с которым произошло столкновение. Это полезно, когда Raycast не дает достаточной точности, потому что вы хотите узнать, сможет ли объект определенного размера, например персонаж, двигаться куда-то, не сталкиваясь ни с чем на пути.
Примечания. Для коллайдеров, перекрывающих сферу в начале развертки, RaycastHit.normal устанавливается напротив направления развертки, RaycastHit.distance устанавливается равным нулю, и нулевой вектор возвращается в RaycastHit.point. Возможно, вы захотите проверить, так ли это в вашем конкретном запросе, и выполнить дополнительные запросы для уточнения результата. Передача нулевого радиуса приводит к неопределенным результатам и не всегда ведет себя так же, как Physics.Raycast.
Смотрите так же: Physics.SphereCast, Physics.CapsuleCast, Physics.Raycast, Rigidbody.SweepTest.
Объявление
public static RaycastHit[] SphereCastAll(Ray ray, float radius, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);Параметры
ray | Начальная точка и направление луча, на который направлена сферическая развертка. |
radius | Радиус сферы. |
maxDistance | Максимальная длина развертки. |
layerMask | Маска слоя, используемая для выборочного игнорирования коллайдеров при создании сферы. |
queryTriggerInteraction | Указывает, должен ли этот запрос вызывать триггеры. |
Описание
То же, что и Physics.SphereCast, но эта функция возвращает все совпадения, которые пересекает развертка сферы.