¿Cuál es la representación vectorial de la dirección hacia arriba de la cámara en OpenGL? ¿Qué pasa si cambiamos el vector en dirección ascendente? ¿Es arbitraria la dirección del vector ascendente?
arriba incluye hacia adentro
El primer grupo de posiciones de cámara eyex, eyey, eyez en coordenadas mundiales
El segundo grupo de pares de lentes de cámara centerx, centery, centerz La posición exacta del objeto en coordenadas mundiales
El tercer grupo de upx, upy, upz es la dirección hacia arriba de la cámara en coordenadas mundiales
Hay esta explicación en Internet. Creo que me conviene, mira si te conviene.
El primer par de ojos equivale a las coordenadas específicas de tu cabeza en una coordenada tridimensional.
El segundo grupo son las coordenadas del objeto que tus ojos quieren ver.
El tercer grupo es la dirección de tu cabeza.
Si configuras upx=0;upz=0;upy=1, significa que tu cabeza está en la misma dirección que una persona normal. Si upy=-1, significa que estás al revés. .
Si upx=1;upz=0;upy=0; entonces es equivalente a mirar el lado derecho. Si upy=-1, es equivalente a mirar el lado izquierdo.
Si upx=0;upz=1;upy=0; significa que estamos mirando la pantalla en nuestra dirección (no recuerdo si la dirección positiva del eje z está mirando hacia adentro o hacia afuera). Fuera, si es incorrecto Equivalente a esto z es lo contrario de lo que dije), si upz = -1, significa que estamos mirando en la dirección de la pantalla.
Comprenderás la función glLookAt() después de probarla más.