alexjet73
@alexjet73

Как узнать какие объекты соприкасаются с коллайдером в данный момент?

Есть событие OnTrigger. Есть райкасты. А есть ли возможность в определенном месте кода, опросить коллайдер получив список хитов? Чтобы узнать какие объекты в данный момент имеют контакт с коллайдером?
Или готовых решений нет и это возможно только реализовав самому некий лист куда будут записываться и удалятся объекты по событиям OnTrigger?
  • Вопрос задан
  • 68 просмотров
Пригласить эксперта
Ответы на вопрос 3
@Farawa
OnTriggerStay
Ответ написан
ShockWave2048
@ShockWave2048
imposter
Попробуйте метод ComputePenetration()
Ответ написан
alexjet73
@alexjet73 Автор вопроса
Благодаря @ShockWave2048 нашел рядом функцию OverlapBox

void MyCollisions()
    {
        //Use the OverlapBox to detect if there are any other colliders within this box area.
        //Use the GameObject's centre, half the size (as a radius) and rotation. This creates an invisible box around your GameObject.
        Collider[] hitColliders = Physics.OverlapBox(gameObject.transform.position, transform.localScale / 2, Quaternion.identity, m_LayerMask);
        int i = 0;
        //Check when there is a new collider coming into contact with the box
        while (i < hitColliders.Length)
        {
            //Output all of the collider names
            Debug.Log("Hit : " + hitColliders[i].name + i);
            //Increase the number of Colliders in the array
            i++;
        }
    }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
18 мая 2022, в 00:48
3000 руб./за проект
18 мая 2022, в 00:31
100000 руб./за проект
18 мая 2022, в 00:09
15000 руб./за проект