next up previous contents
Next: Pipeline Schritte Up: OpenGL Previous: Einführung   Contents

Architektur

OpenGL definiert eine sehr einfache API welche nur grundlegende Funktionalität zur Erstellung von 3D-Applikationen bietet. Das Hostsystem auf dem eine solche Applikation ausgeführt werden soll muss eine Implementation dieser API vorhalten, eine freie Implementation bietet Mesa ([5]), allerdings ist diese nicht offiziell zertifiziert, Mesa hat sich aber trotzdem zumindest auf unixoiden Betriebssystemen als Quasi-Standard etabliert. Die Aufgabe der Implementierenden Bibliothek ist es im Grunde nur die Bibliotheksaufrufe des Benutzers an den ebenfalls vom System bereitgestellten, herstellerspezifischen Treiber weiterzuleiten, welcher diese dann in einer für die jeweilige GPU verständlichen Form an die Grafikkarte weiter gibt. Diese Architektur lässt den Grafikkartenherstellern möglichst große Freiheit in Design und Implementierung der nötigen Funktionen, auch lässt sie dem Benutzer die freie Wahl der implementierenden Bibliothek.

Figure 1.1: Die OpenGL Visualisierungspipeline (aus [1])
Image Flow

OpenGL arbeitet sowohl auf Bilddaten als auch auf geometrischen Primitiven. Beide Arten von Daten werden über unabhängige, programmierbare Pipelines verarbeitet und erst im letzten Schritt auf der Grafikkarte zusammengefügt und in den Frame-Buffer geschrieben (Siehe Abbildung 1.1).


next up previous contents
Next: Pipeline Schritte Up: OpenGL Previous: Einführung   Contents
2005-10-25 Michael Bayer - nightspawn.com