opengl - glortho - Parámetros gluPerspective- ¿qué significan?
glulookat (1)
Me pregunto acerca de los parámetros gluPerspective
.
En todos los ejemplos, veo que fovy
está configurado en torno a 45-60 grados. He intentado configurarlo con diferentes valores y el objeto simplemente desaparece. ¿ fovy
es la explicación?
El valor del aspect
siempre debe ser la relación? ¿Por qué uno lo cambiaría?
zNear, zFar
: una vez más, los valores habituales son alrededor de 10 y más de 500 ¿Qué refleja?
El propósito de los 4 parámetros es definir una vista truncada , como esta:
donde nada fuera del tronco debe ser visible en la pantalla (para lograr esto, los parámetros se usan para calcular una matriz de 4x4, que luego se usa para transformar cada vértice en el llamado espacio de clip. Allí, se prueba si hay un vértice dentro del tronco o no es trivial)
El parámetro de campo de visión es básicamente el ángulo entre un avión que pasa por la posición de la cámara y la parte superior de la pantalla y otro plano que pasa por la posición de la cámara y la parte inferior de la pantalla. Cuanto más grande es este ángulo, más puedes ver del mundo, pero al mismo tiempo, los objetos que puedes ver se volverán más pequeños.
Para observar su influencia, te sugiero que codifiques una aplicación simple en la que puedas aumentar / disminuir gradualmente el teclado mediante la pulsación de una tecla, luego renderiza algunas esferas u otros objetos básicos y ve lo que sucede a medida que lo cambias.
La relación de aspecto es la relación de aspecto de su ventana gráfica. (En el gráfico anterior, la ventana gráfica está ubicada en el plano de recorte cercano). Ser capaz de definirlo a voluntad tiene sentido, ya que la relación de aspecto de su ventana gráfica puede variar.
Los valores zNear & zFar definen la distancia entre la posición de la cámara y los planos de recorte cercanos y lejanos, respectivamente. No se verá nada que esté más cerca de la cámara que zNear o más lejos que zFar. Ambos valores deben ser> 0 y obviamente, zFar> zNear. zFar idealmente debe elegirse para que todo lo que desee representar sea visible, pero hacerlo más grande de lo necesario desperdicia la precisión del buffer de profundidad y puede generar efectos de parpadeo, llamados z-fighting. Del mismo modo, establecer zNear demasiado cerca de la cámara puede causar el mismo efecto; de hecho, tener un valor de zNear razonable es más importante que zFar. Si quiere saber exactamente por qué sucede esto, debería leer algunas explicaciones detalladas, como esta o esta.