/ / Unity - OnTriggerEnter nie jest wywoływany - unity3d

Unity - OnTriggerEnter nie jest wywoływany - unity3d

Chciałbym zrobić akwarium, w którym istnieją różne ryby.

Starałem się nie pozwolić, aby ryby przechodziły przez kostki, ale OnTriggerEnter funkcja nie działa, nawet jeśli obiekty wchodzą do wyzwalacza.

Te zdjęcia przedstawiają każdy z czynników inspekcji wielorybów i kostek. inspektor wielorybów inspektor wielorybów

Inspektor kostki

Odpowiedzi:

1 dla odpowiedzi № 1

Musisz tylko dodać Collider do twojej ryby, (na tym samym poziomie Flock skrypt lub dziecko GameObject).

OnTriggerEnter uruchomi się tylko wtedy, gdy a Collider wchodzi w Trigger Collider

Zobacz MonoBehaviour.OnTriggerEnter (Collider)


3 dla odpowiedzi № 2

Chyba brakuje ci niektórych z tych rzeczy:

  • Dodaj RigidBody do ryb
  • Ustaw Collider obiektu GameObject, który wykryje ryby w niezmienionej postaci spust. I pozostaw to, co nie zostało zaznaczone w Zderzaczu ryb

EDYTOWAĆ:

Z najnowszego zrzutu ekranu skrypt flokowy, który ma wykryć wyzwalacz, jest nie dołączony do twojego GameObject. Po prostu podłącz go do jednego z dwóch GameObjectów, które mają się zderzać.


0 dla odpowiedzi № 3

Ok, więc wcześniej miałem ten problem. Coś, co pomogło mi DUŻO było, aby upewnić się, że TWÓJ SWÓJ PISMA W SWOIM OBIEKCIE. To jest po prostu łatwiejsze.

Jeśli nie utworzyłeś swojego skryptu w swoim obiekciewtedy gdy wpisujesz void OnTriggerEnter, nie będzie żadnej sugestii, aby zakończyć słowo "OnTriggerEnter" .Jeśli utworzysz go w obiekcie, to powinien sugerować, aby zakończyć słowo jako "OnTriggerEnter".

Lub po prostu brakuje Ci zderzacza lub sztywnego ciała. :)