
Vorbemerkung / Rendering-Pipeline
Bei der Rendering-Pipeline bzw. Grafik-Pipeline handelt es sich um eine Beschreibung der einzelnen Verarbeitungsschritte und Zwischenergebnisse vom 3d-Objekt bis hin zum fertigen Bild. Die Beschreibung einer Szene im dreidimensionalen Raum wird einer zweidimensionalen Projektion auf einer Bildoberfläche zugeordnet. Dabei werden einzelne Arbeitsschritte zeitlich nacheinander abgearbeitet. Viele dieser Prozesse kann die Grafikhardware erledigen. Aufwendige Berechnungen wie Raytracing und Radiosity müssen im Softwarerenderer berechnet werden. Bei einer interaktiven 3d-Grafik bzw. Echtzeitgrafik wie z.B. div. 3d-Computerspiele bzw. auch die Darstellung im 3d-Fenster in einem 3d-Programm werden die Arbeitsschritte in der Grafikhardware berechnet. Die Rendering-Pipeline beschreibt allgemeine Verarbeitungsschritte für Hardware- und Softwarerendering.
Die Abläufe in der Rendering-Pipeline können in zwei verschiedene Prozesse eingeteilt werden.
- Geometrischer Prozess: Der geometrische Prozess umfasst Operationen wie das Transformieren von 3d-Daten auf eine 2d-Ebene.
- Algorithmische Prozesse: Algorithmische Rendering-Prozesse schließen Vorgänge wie Schattierung und Textur-Mapping ein und sind deutlich kostenintensiver als die geometrischen Operationen. Viele dieser Operationen können derzeit nicht durch die Grafikkarte berechnet werden.
![]() |
(a) Hypershade: In Editoren wie der Hypershade in Maya oder der Material Editor in 3ds max werden Oberflächeneigenschaften definiert. (b) Interaktive 3d-Grafik: Drahtgitterdarstellung (d) Interaktiv 3d-Grafik: Schattierte Darstellung. (c) Rendering: Ein durch die Software berechnetes Pixel- oder Vectorrendering mit Spezialeffekten wie Schatten, Globale Beleuchtung, Spiegelungen und Lichtbrechungen. Die Dauer der Berechnung der Bilddatei hängt von den Rendereinstellungen ab. |
Die Prozesse der Rendering-Pipeline
![]() |
Die Rendering-Pipeline kann nach folgenden Gesichtspunkten unterteilt und beschrieben werden: (a) nach den verwendeten Verfahren wie Transformation,Projektion, Clipping,.... (b) anhand der auftretenden Koordinatensysteme |
![]() | 3d- bzw. 2d Objekte werden in einem eigenen Objekt-Koordinatensystem, auch lokales Koordinatensystem genannt, durch Transformation (Translation, Rotation oder Skalierung) in der Szene platziert. Im ersten Schritt werden diese Objekte in ein Weltkoordinatensystem transformiert. Mathematisch werden die Transformationen durch Matrixmultiplikationen der Transformationsmatrizen mit den die Objekte definierenden Punkten durchgeführt. Das Ergebnis ist eine Beschreibung der Szene im Welt-Koordinatensystem oder globalen Koordinatensystem. |
![]() | In der nächsten Stufe wird die Platzierung der virtuellen Kamera im Welt-Koordinatensystem durchgeführt. Die Beschreibung einer Szene im Ansichtskoordinatensystem ist die Betrachtungsweise der Szene aus Sicht der Kamera. Entscheidungen wie perspektivische bzw. parallele Projektion werden in diesem Schritt getroffen. Mathematisch handelt es sich um ähnliche Berechnungen wie bei der Transformation von 3d-Objekten. |
![]() | Nach der Positionierung und Ausrichtung der Kamera wird das entsprechende Sichtvolumen festgelegt. Die Definition der Projektionsart hat hier erheblichen Einfuss. Wird eine Parallelprojektion verwendet, wird keine perspektivische Verzerrung berechnet. Die Objekte werden auf das dreidimensionale Sichtvolumen zugeschnitten. Die resultierenden Koordinaten werden als Clipping-Koordinaten bezeichnet. |
![]() | In der Stufe D wird der Übergang von dreidimensionalen auf zweidimensionale Koordinaten vollzogen. Es entstehen Koordinaten in der Projektions- oder Bildebene, im Bild-Koordinatensystem. In dieser Stufe findet auch das Clipping und Culling statt. |
![]() | In der Stufe E erfolgt die Rasterung der projizierten Punkte in das zweidimensionale Geräte-Koordinatensystem, die Schattierung und die Bestimmung der Sichtbarkeit mit dem Bildraumverfahren des z-Buffers. Es entsteht ein zweidimensionales Pixelbild im Gerätekoordinatensystem des Ausgabegerätes.Die Bestimmung der Intensität bzw. die Farbe eines Pixels wird mittels Beleuchtungsmodellen und Schattierungstechniken ermittelt. Die Berechnung der Beleuchtung erfolg je nach Beleuchtungsmodell in unterschiedlichen Stufen. |