Определить, какой дочерний объект вошел в триггер [РЕШЕНО]

Общие вопросы о Unity3D

Определить, какой дочерний объект вошел в триггер [РЕШЕНО]

Сообщение mastersmit 13 янв 2020, 09:53

Есть объект такого вида:
Синтаксис:
Используется csharp
root|
    |-child0
    |-child1
 

На root, child0 и child1 висят бокс коллайдеры не триггеры.
Вся логика висит на root.

Когда этим объектом входим в триггер какого-то другого объекта, то OnTriggerEnter в root сработает трижды. Как можно определить, что уже был вход и каким именно коллайдером вошли, например child'ом0?

Помню, что когда-то несколько лет назад делал это, но не помню, весь тырнет уже перерыл, хелп :ympray:
Последний раз редактировалось mastersmit 14 янв 2020, 03:40, всего редактировалось 1 раз.
Аватара пользователя
mastersmit
Старожил
 
Сообщения: 558
Зарегистрирован: 12 май 2014, 14:05
Откуда: Приморский край

Re: Определить, какой дочерний объект вошел в триггер

Сообщение 1max1 13 янв 2020, 12:45

Никак скорей всего, тебе логику триггеров надо повесить на сами триггеры.
Но зато через обычную коллизию можно:
Синтаксис:
Используется csharp
    void OnCollisionEnter(Collision collision)
    {
        print(collision.contacts[0].thisCollider.gameObject.name);
        print(collision.contacts[0].otherCollider.gameObject.name);
    }
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Определить, какой дочерний объект вошел в триггер [РЕШЕНО]

Сообщение mastersmit 14 янв 2020, 03:41

Ок :-bd
Аватара пользователя
mastersmit
Старожил
 
Сообщения: 558
Зарегистрирован: 12 май 2014, 14:05
Откуда: Приморский край


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16