Paso 3: Flujo de control y matrices
OpenGL es una máquina de estado. Cuando se cambia algo, se queda así hasta que lo cambie explícitamente otra vez. Lo mismo es con matrices. En openGL, antes de manipular cualquier matrices, primero necesitamos establecer la matriz actualmente siendo modificada, que sólo puede ser uno a la vez.
Supongamos que construimos un simple cubo en OpenGL. (por ahora, no escribo el código, pero más adelante lo explico)
INICIO
↓
{---código para mover/rotar el cubo---}
{---código para hacer el cubo---}
↓
SORTEO
Antes de que podemos ejecutar este código necesitamos decirle a openGL que matriz para cargar y modificar nuestra escena actual. Así que le damos (OpenGL) la matriz de opinión de modelo porque como dije antes, se utiliza definir los cambios a nuestra escena actual. Si no lo hacemos, OpenGL no sabrá qué matriz utilizar porque después de todo, OpenGL es todo sobre matrices.
INICIO
↓
{---Carga la matriz (ver modelo)---}
{---código para mover/rotar el cubo---}
{---código para hacer el cubo---}
↓
SORTEO
Ahora podemos mover nuestro cubo.
Del mismo modo, hemos creado la matriz de proyección.
INICIO
↓
{---Carga la proyección (matriz)---}
{---código para la proyección, la ventana setup etc.---}
↓
SORTEO
______________________________________________________________________________________________
Nota:-Technicialy allí no es ninguna cámara en OpenGL. Es decir, cada vez que cambie su posición en la escena, cambian la posición de todos los objetos en la escena, o más específicamente que modificar la matriz de opinión de modelo de toda la escena. El punto de visión o la "cámara" permanece siempre en la misma posición.
______________________________________________________________________________________________