OpenGL ES 2,0 equivalente de glOrtho ()?
-
27-09-2019 - |
Pregunta
En mi aplicación para el iPhone, necesito proyectar escena 3D en 2D las coordenadas de la pantalla para algunos cálculos. Mis objetos pasan por varias rotaciones, traslaciones y escalado. Así que pensé que necesita multiplicar los vértices con matriz modelview primero, entonces necesito para multiplicar con la matriz de proyección ortogonal.
En primer lugar la mañana en el camino correcto?
Tengo la vista del modelo Matrix, pero necesito la matriz de proyección. ¿Hay un glOrtho () equivalente en ES 2.0?
Solución
mat4 projectionMatrix = mat4( 2.0/768.0, 0.0, 0.0, -1.0,
0.0, 2.0/1024.0, 0.0, -1.0,
0.0, 0.0, -1.0, 0.0,
0.0, 0.0, 0.0, 1.0);
gl_Position = position;
gl_Position *= rotationMatrix;
gl_Position.x -= translateX;
gl_Position.y -= translateY;
gl_Position *= projectionMatrix;
Para obtener una resolución fija (1024x768 en mi caso para el iPad) que utiliza esta matriz y todo funciona como encanto :) He aquí la descripción completa los valores que se necesita para poner en su matriz: glOrtho.html