Matrizen APIs
← MVP Matrix | ● | Matrizen Rechnen →
In der Fixed-Funktion-Pipeline wurde ein Matrix Stack verwaltet, der hierarchische Modellierung ermöglichte - heutzutage muss man die Matrizen selber verwalten.
Frühere Befehle
- glMatrixMode()
- glLoadIdentity()
- glPushMatrix() + glPopMatrix()
- glMultMatrix()
- glTranslate*() + glRotate*()
- glFrustum() + glOrtho()
- gluLookAt()
Nicht mehr Teil der programmierbaren Pipeline - nur noch das setzen eines Uniformen Attributs auf die 16 Werte einer $4\times 4$ Matrix: glUniformMatrix4fv (<Nummer>, 1, GL_FALSE, <Zeiger auf Array mit 16 floats>)
Verwalten, Rechnen, etc. der Matrizen bleibt einem selber überlassen. Es gibt Standard-Bibliotheken, die alle ähnlich zu den Shader-Konstrukten arbeiten:
- linmath (https://github.com/datenwolf/linmath.h)
C-API, etwas gewöhnungsbedürftig, sehr schnell - GLM (http://sourceforge.net/projects/ogl-math/files/)
Objektorientiert, deshalb viel einfacher - glvertex-Framework
Sehr nahe an GLM angelegt, ohne ein paar Fallstricke
← MVP Matrix | ● | Matrizen Rechnen →