Jump to content
Sign in to follow this  
iemaru

Tengo dudas sobre el collider y el navmesh

Recommended Posts

Saludos, mi nombre es Luis

Tengo problemas con el personaje y q apesar de q muevo el mesh y los bones cuando se reproduce la anim se mueve dnd estaba antes sin el collider y el navmesh. ya le hice rigg 2 veces al personaje y nada...se supone q cuando se dibuje el collider o el navmesh sea en el personaje y no se pq rayos se dibujan atras de persoanje en unity.sera un error de unity? uso la ver unity 2018.3.6.f.1.  gracias x la ayuda!

duda1.jpg

Duda2.jpg

Share this post


Link to post
Share on other sites
1 hour ago, iemaru said:

sera un error de unity?

Hola, el 99% de las veces es error del usuario, lo digo porque parece que todas las dudas son supuestos bugs de Unity cuando en realidad es error de uno.

El collider funciona solamente para las físicas, es decir si no estás detectando triggers, colisiones o moviendo un rigidbody dinámico o simplemente usando la información de los contactos del RB el collider está de más.

El navmeshAgent tiene todo lo necesario para moverse en un mavMesh no hace falta agregarle nada, pero si lo que querés es que responda a las físicas (como mencioné en el parrafo anterior) debés ponerle un collider... Unity se maneja con un concepto de composición, cada cosa tiene su behaviour, si querés que algo realice algo simplemente agregale el componente.

La animación lo que hace es leer (tal cual) los valores de X campo y "hacerles override" (por decirlo de alguna manera, simplemente lee lo que le dice el clip de animación, pero parece que los usa para él solo y no te los deja modificar por código). No es lo mismo animar un obj, que animar al padre, ni setear una posicion al nito, hijo, padre, todos responde diferente, digo esto porque si hiciste la animación desde afuera es probable que tengas (o no, yo nunca tuve) problemas con la jerarquía, no lo sé, dependerá del software que usaste.

Está muy bien que hayas subido una imagen completa. Se ve que el animator lo tiene directamente el objeto raiz (o el de mayor jerarquía), podrías probar:

  1. Lo más simple, move tu personaje a diferentes posiciones y fijate si siempre vuelve a la misma pos. Si el clip de animación dice que la pos será <3 , 0 , 5> (por ej) no importa nada más, esa será la posición. Si es esto puede ser que el obj esté esperando ir a (usualmente y por defecto) <0,0,0> .
  2. (casi sumado a lo anterior) Meter a este obj dentro de otro obj de mayor jerarquía vacío (es decir crearle un padre) y usar el nav mesh o collider en el padre, osea, dejar el animator en el modelo, tal cual lo tenés ahora.

 

Saludos

  • Like 2

Share this post


Link to post
Share on other sites
Sign in to follow this  

UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...