Cómo obtener un nuevo vector de dirección de la cámara al mover un ángulo relativo arbitrario

StackOverflow https://stackoverflow.com//questions/24019950

Pregunta

Estoy implementando una clase de cámara y me estoy quedando atrapado con algunas cosas

Supongamos que la cámara está en el punto (0,0,0) que mira una dirección cierta con sus vectores correspondientes y correctos.

Tengo un control de joystick que le permite avanzar hacia adelante, o cambiar de orientación moviéndose (izquierda a la derecha) o (arriba abajo), de acuerdo con los vectores mencionados anteriormente.

¿Cómo puedo saber, dado los 3 vectores, que es el vector de dirección resultante si, por ejemplo, quiero moverme n grados?

¿Fue útil?

Solución

Si está hablando de rotar su cámara, aquí es la forma en que se hace: cada rotación es una matriz que transforma las coordenadas, por lo que todo lo que tiene que hacer es calcular la matriz de su rotación y luego aplicarla a DIR, UPy los vectores correctos de su cámara para obtener nuevos después de que se realice la rotación.

Aquí hay un poco de lectura sobre las matrices de rotación (lea la sección de rotaciones 3D): http://mathworld.wolfram.com/rotationmatrix.html

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top