Unity - No me detecta colision

JackSparow

Buenas,

No consigo ver que estoy haciendo mal. Nunca recuerdo haber tenido problemas al detectar colisiones, y ahora por algún motivo no me las detecta teniendo lo siguiente.

  • Un player (con un script con un método para detectar colisión)
  • Una pelota (con un script con un método para detectar colisión)
  • Una pared.

Ni el player ni la pelota me detectan colisiones (ni con su complementario, ni con la pared).
Creo que lo tengo bien configurado: Tanto el player como la pelota, tienen su rigidbody y no están marcados como "isKinematic". Los tres con su collider. Alguna idea? :(

Por si afecta en algún sentido:

  • El player lo muevo asignando yo su velocidad (en plan... rigidbody.velocity = ....).
  • La pelota se mueve por las simples físicas.
Hipnos

No deberías activar is trigger?

1 respuesta
arnaupool

Hace tiempo que no toco Unity, pero creo que es OnCollisionEnter.

2 1 respuesta
JackSparow

#2 Si lo marcas como trigger, el objeto deja de ser algo que colisione como tal. Luego es cierto que se pueden detectar collisiones entrantes en ese espacio con:
OnTriggerEnter (también Exit, Stay, etc...).
#3 Puf, cierto, el método se llama como tu comentas. Solucionado! vaya empanada :(

Gracias a los dos!

2

Usuarios habituales

  • JackSparow
  • arnaupool
  • Hipnos