Feste Funktionspipeline
(Mehr Informationen/weitere Artikel) {{{1}}} |
Fixe Funktionspipeline für OpenGL 1.1
Inhaltsverzeichnis
- 1 Vertex Pipeline
- 1.1 Eingabe Konvertierung
- 1.2 Modelview Muliplikation
- 1.3 Primitive erstellen
- 1.4 Flat Shading
- 1.5 Benutzerdefinierte Clipping Planes
- 1.6 Projection Multiplikation
- 1.7 Kamera Clipping
- 1.8 Division durch w
- 1.9 Viewport Multiplikation
- 1.10 Z Anpassung
- 1.11 Polygon Culling
- 1.12 Polygon mode
- 1.13 Rasterizer
Vertex Pipeline
Eingabe Konvertierung
Hier erhält die Vertex Pipeline durch entsprechende Konvertierung(en) eine standardisierte Form eines Vertices.
Siehe auch glVertex glVertexPointer glArrayElement
Modelview Muliplikation
Der [[Vertex] wird mit der im Modelview Matrix Stack oben aufliegenden Matrix multipliziert.
Siehe auch glMatrixMode glPushMatrix glPopMatrix glTranslate glScale glRotate glMultMatrix glLoadMatrix glLoadIdentity
Primitive erstellen
Hier werden die Eingabedaten über die Art des Primitives gegebenenfalls konvertiert und weiter gereicht.
Siehe auch glBegin glEnd glDrawElements glDrawArrays
Flat Shading
Gegebenenfalls wird der bereits berechnete Farbwert für das Flat Shading für alle Punkte des Primitives gleich gesetzt.
Siehe auch glShadeModel
Benutzerdefinierte Clipping Planes
Hier werden gegebenenfalls die Primitive an benutzerdefinierten Ebenen abgeschnitten, weiter gereicht oder komplett verworfen.
Siehe auch glClipPlane
Projection Multiplikation
Hier werden die Vertices mit der am Projection Matrix Stack oben aufliegenden Matrix multipliziert.
Siehe auch glOrtho glFrustum gluPerspective glMatrixMode
Kamera Clipping
Das clippen am Kamera Sichtkörper
Siehe auch Clipping Plane
Division durch w
Hier werden x, y und z Koordinaten des Vertices durch die w Koordinate dividiert. In diesem Schritt erfolgt bei der perspektivischen Projektion die eigentliche Projektion auf den Bildschirm (oder andere Ausgabemedien).
Viewport Multiplikation
Hier wird der x und y Teil des Vertex mit der Viewport Matrix multipliziert. Das Ergebnis sind die Pixelcoordinaten des Vertex.
Siehe auch: glViewport
Z Anpassung
Hier wird der zuerst im Bereich [-1|1] liegende z Teil des Vertex auf den für den Z Buffer benötigten Bereich [0|1] gescaled.
Siehe auch: glDepthRange
Polygon Culling
Das Front- oder Backface Culling findet hier statt.
Siehe auch glFrontFace glCullFace
Polygon mode
Gegebenenfalls wird hier 1 3eck in 3 Linien oder 3 Punkte zerlegt. Das typische Wireframe kommt häufig hier zustande.
Siehe auch glPolygonMode
Rasterizer
Hier werden aus dem Primitiv die Fragmente berechnet.