Jump to content
Sign in to follow this  
jtorp20

Giro NPC con quaterniones

Recommended Posts

Buenas noches.

Estoy un poco perdido con esto. Mi proyecto es un juego en tercera persona, y con el siguiente código que es parte del script del enemigo, hago que a una distancia de 10, este  enemigo gire hacia mi personaje.

El problema es que quiero meterle animación de giro a la derecha y a la izquierda y no se como establecer la condición para activar cada animación. ¿Con qué valores  y de que variable sé, que debe girar a la derecha o a la izquierda? 

Quote

if (Vector3.Distance(player.position, this.transform.position) < 10) 
        {
            Vector3 direccion = player.position - this.transform.position; 
            this.transform.rotation = Quaternion.Slerp(this.transform.rotation, Quaternion.LookRotation(direccion), 0.5f);
        }

Saludos!!!

Edited by pioj
Por favor, usa el <> o el "quote" para pegar código.

Share this post


Link to post
Share on other sites

Habrá que calcular el ángulo respecto a player y this y aplicar esa diferencia para la rotation. La menor diferencia entre las dos posibles:

 

Share this post


Link to post
Share on other sites

Ok. Muchas gracias por las respuestas y por el vídeo.

Al final parece que para calcular el angulo por el camino mas corto tengo que usar ángulos de Euler y luego pasar a hacer la rotación con quaterniones.

 

Share this post


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

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