Объявление
public static Collider[] OverlapSphere(Vector3 position, float radius, int layerMask = AllLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);Параметры
position | Центр сферы. |
radius | Радиус сферы. |
layerMask | Маска слоя определяет, какие слои коллайдеров включать в запрос. |
queryTriggerInteraction | Указывает, должен ли этот запрос вызывать триггеры. |
Возвращает
Collider[] Возвращает массив со всеми коллайдерами, касающимися или находящимися внутри сферы.
Описание
Рассчитывает и сохраняет коллайдеры, соприкасающиеся со сферой или находящиеся внутри нее.
Смотрите так же: Physics.AllLayers.
Выделяет память. Вместо этого рассмотрите возможность использования Physics.OverlapSphereNonAlloc.
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour
{
void ExplosionDamage(Vector3 center, float radius)
{
Collider[] hitColliders = Physics.OverlapSphere(center, radius);
foreach (var hitCollider in hitColliders)
{
hitCollider.SendMessage("AddDamage");
}
}
}
Посмотрите так же: Маска слоя, в частности "Выборочное наложение лучей" для подробного примера маскирования слоя.