Computergrafik

OpenGL Matrizen

← GL Legacy Attribute | ● | GL Matrix Manipulation →

Im Legacy Mode werden in OpenGL die Projektions- und die ModellView-Matrix getrennt spezifiziert; die MVP-Matrix ergibt sich automatisch, ebenso die inverse transponierte ModellView-Matrix für die Normalentransformation.

Der Open GL Matrix Mode legt fest, welche der beiden Einzelmatrizen P over MV durch nachfolgende Transformationen verändert werden soll.

Für die Projektionsmatrix P:

glMatrixMode(GL_PROJECTION);

Für die Transformationsmatrix MV:

glMatrixMode(GL_MODELVIEW);

Im Vertex-Shader kommen die so angegebenen Matrizen an:

  • gl_ModelViewMatrix
  • gl_ModelViewProjectionMatrix
  • gl_NormalMatrix (inverse transponierte ModellView-Matrix)

Achtung: In core Profilen gibt es diese Matrizen und die dazugehörigen OpenGL-Calls nicht mehr… Nur noch selbst definierte!

glVertex definiert deshalb selber die uniformen Variablen mv, mvp, mvit - daher benutzen wir diese die ganze Zeit!

Auch sonst machen selbst definierte Matrizen mehr Sinn (so wie es im Praktikum gelebt wird), da man mehr Kontrolle über sie hat.

← GL Legacy Attribute | ● | GL Matrix Manipulation →

Options: