Practica9
Cuestionario Previo.
1. Investigue el comando gluLookAt, cómo se utiliza y los parámetros que recibe. Además agregue una aplicación que usted considere que se le puede dar adicho comando.
gluLookAt define el posicionado de la cámara:
gluLookAt(eye.x, eye.y, eye.z, look.x, look.y, look.z, up.x, up.y, up.z);
Esta función crea una matriz de vista derivada del puntode vista de un ojo, un punto de referencia indicando el centro de la escena y un vector arriba, la matriz mapea el punto de referencia al eje egativo z el punto del ojo al origen. Cuando de ocupa unaamtriz de proyección típica el centro de la escena se mapea al centro del puerto de vista. Similarmente la dirección describa por el vector arriba es mapeado al eje y positivo para que apunte haciaarriba en el puerto de vista. El vector arriba no debe ser paralelo a la línea de visión del punto del ojo al punto de referencia.
Los parámetros que recibe son:
eye.x, eye.y, eye.z- Especifica laPosicion del punto del ojo
look.x, look.y, look.z- Especifica la posicion del punto de referencia
up.x, up.y, up.z – Especifica la dirección del vector arriba
Ejemplo:
Sabemos que la funcióngluLookAt() construye la matriz que convierte las coordenadas universales en coordenadas de cámara (“eye”.) En la figura se muestra el posicionamiento del sistema de coordenadas de cámara respecto aluniversal, con su origen en el “ojo” y orientada de tal forma que sus tres vectores unitarios son u, v y n.
El ojo está orientado en –n. gluLookAt() usa los parámetros eye, look y up para crear u, v yn de acuerdo a la siguiente relación:
n = eye – look
u = up x n
v = n x u
gluLookAt entonces normaliza los tres vectores de módulo unidad, construyendo la siguiente matriz
donde el punto dtiene como componentes (dx, dy, dz) = (-eye.u, -eye.v, -eye.n)
a) u, v y n son perpendiculares mutuamente.
b) La matriz V convierte apropiadamente de coordenadas universal a “eye” en el origen (0, 0,...
Regístrate para leer el documento completo.