Home / LinuxUser / 2001 / 12 / 3D-Grafik unter X: Die Grundlagen

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Eingedost
(161 Punkte bei 4 Stimmen)
Aufteiler
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.

Die dritte Dimension

3D-Grafik unter X: Die Grundlagen

OpenGL

Einzelnen Karten weisen unterschiedliche Funktionen auf und sind zudem vollkommen verschieden aufgebaut. Ein Programmierer muss deshalb jede einzelne Grafikkarte kennen, wenn er ein Programm mit 3D-Grafik schreiben möchte. Um dieses Problem zu umgehen, presst man einen Satz von Funktionen in eine Bibliothek. Eine dieser Funktionen könnte z. B. "male einen Quader" oder "zeichne eine Kugel" lauten. Die Entwickler können die Bibliothek innerhalb ihrer eigenen Programme verwenden und ersparen sich so zusätzliche Arbeit.

Aufgrund der Standardisierung kann die Bibliothek auf jedem Computer durch ein, speziell auf das eingesetzte Grafikkartenmodell zugeschnittenes Pendant ausgetauscht werden. Das eigentliche Programm muss hierbei nicht geändert werden. Eine solche Standardisierung für den Bereich der 3D-Grafik hat die Firma Silicon Graphics vorgenommen und das Ergebnis unter der Bezeichnung OpenGL veröffentlicht (http://www.opengl.org). Ein klassisches Beispiel für eine solche Bibliothek ist das freie und kostenlose Mesa (http://www.mesa3D.org). Sie entspricht fast den Forderungen des OpenGL-Standards. In der Praxis dient Mesa häufig Hardware-Herstellern als Basis für ihre eigenen OpenGL-Bibliotheken.

Unter Linux verwenden nahezu alle Programme mit einer dreidimensionalen Grafikausgabe die OpenGL-Bibliothek. Dies hat den angenehmen Seiteneffekt, dass alle OpenGL-basierten Programme automatisch von dem Einsatz einer optimierten OpenGL-Bibliothek profitieren.

Die Funktionen der OpenGL-Bibliothek möchte man auch unter der grafischen Oberfläche und dort insbesondere innerhalb der einzelnen Fenstern nutzen. Damit dies reibungslos klappt, wird ein Erweiterungsmodul für den X-Server benötigt, das als GLX-Modul oder GLX-Treiber bezeichnet wird.

Alles zusammen

Damit haben wir alles zusammen, was wir für eine schnelle Grafikausgabe benötigen (vgl. Abbildung 2).

Abbildung 2

Abbildung 2: Der weite Weg der 3D-Daten vom Programm bis auf den Bildschirm unter Ausnutzung der OpenGL-Bibliothek und des Direct Rendering Interface

Die Funktionen der aufgerufenen OpenGL-Bibliothek greifen über das DRI-Kernel-Modul direkt auf die Grafikkarte zu. Innerhalb des X-Servers hilft das GLX-Modul, die 3D-Bilder in den zugehörigen, korrekten Fenstern anzuzeigen. Der Kartentreiber des X-Servers sorgt für die schnelle Darstellung des gesamten Desktops auf dem Monitor. Durch das perfekte Zusammenspiel wird jede Sekunde Rechenzeit perfekt ausgenutzt.

Sie brauchen nach den Komponenten jedoch nicht in den Tiefen des Internets zu suchen. In einer neuen Distribution mit XFree 4.x und der Kernel-Version 2.4.x ist alles vorhanden. Der Kernel bringt seine DRI-Treiber selbst mit und das XFree 4.x -Paket enthält standardmäßig alle Erweiterungsmodule.

Tip a friend    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 55 Punkte (2 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 05/2014

Aktuelle Ausgabe kaufen:

Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,95 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 60,60) können Sie im Medialinx-Shop bestellen.

Tipp der Woche

Bilder vergleichen mit diffimg
Bilder vergleichen mit diffimg
Tim Schürmann, 01.04.2014 12:40, 1 Kommentare

Das kleine Werkzeug diffimg kann zwei (scheinbar) identische Bilder miteinander vergleichen und die Unterschiede optisch hervorheben. Damit lassen sich nicht nur Rätsel a la „Orignial und Fäls...

Aktuelle Fragen

programm suche
Hans-Joachim Köpke, 13.04.2014 10:43, 8 Antworten
suche noch programme die zu windows gibt, die auch unter linux laufen bzw sich ähneln sozusagen a...
Funknetz (Web-Stick)
Hans-Joachim Köpke, 04.04.2014 07:31, 2 Antworten
Bei Windows7 brauche ich den Stick nur ins USB-Fach schieben dann erkennt Windows7 Automatisch, a...
Ubuntu 13.10 überschreibt immer Windows 8 Bootmanager
Thomas Weiss, 15.03.2014 19:20, 8 Antworten
Hallo Leute, ich hoffe das ich richtig bin. Ich habe einen Dell Insipron 660 Ich möchte gerne Ub...
USB-PTP-Class Kamera wird nicht erkannt (Windows-only)
Wimpy *, 14.03.2014 13:04, 15 Antworten
ich habe meiner Frau eine Digitalkamera, AGFA Optima 103, gekauft und wir sind sehr zufrieden dam...
Treiber
Michael Kristahn, 12.03.2014 08:28, 5 Antworten
Habe mir ein Scanner gebraucht gekauft von Canon CanoScan LiDE 70 kein Treiber wie bekomme ich de...