¿Pero por qué usa un sistema de coordenadas para zurdos?
Agreguemos "por defecto" a esa pregunta. Porque todo lo que se necesita para cambiarlo es glDepthRange(1.0f, 0.0f);
y ahora eres diestro. Y sí, esa es la sintaxis GL perfectamente legal; nunca ha habido una restricción de que el rango cerca de z sea menor que el rango lejano z.
¿Por qué es zurdo por defecto? Tal vez a alguien del ARB le gustaba eso. Tal vez a alguien en el ARB le gustaba aumentar el rango de profundidad en lugar de disminuir, y la orientación de la esquina inferior izquierda lo hacía necesario. Tal vez porque el progenitor de OpenGL, IRIX GL, lo hizo de esta manera y el ARB no vio ninguna necesidad de cambiarlo.
La razón de esto es irrelevante; la destreza es puramente una conveniencia de notación. En algunos lugares, diestro tiene sentido. En otros, zurdo tiene sentido. Y dado que se trata de un cambio trivial, simplemente use lo que funcione para usted.
Sería consecuente con todo lo demás.
De acuerdo con ¿qué todo lo demás? ¿Todas las cosas de función fija que se han eliminado?
La transformación de la ventana gráfica es realizada por OpenGL internamente, donde nadie puede acceder. Ni siquiera proporciona una matriz; usted solo proporciona una vista y un rango de profundidad. Entonces, desde la perspectiva de alguien que usa GL de función fija, todo es realmente correcto.
La única vez que aparece la lateralidad es cuando trata directamente con los sombreadores de vértices, donde debe saber cuál es la dirección del espacio de clip. Y en ese caso, el cambio en la destreza es una función simple de la proyección en perspectiva que niega la Z. O, si le gustan las coordenadas para zurdos, la proyección en perspectiva no anula la Z. O nuevamente, simplemente invierta el glDepthRange
y ahora eres diestro
No entiendo cómo un origen centrado significa que es "zurdo" ... –
Nunca insinué eso. Vea aquí: http://www.songho.ca/opengl/gl_projectionmatrix.html Reformulado mi pregunta. –
¿Por qué un sistema diestro sería mejor? – cmannett85