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: 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.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • 3D-Grafik unter X: Die Konfiguration
    Nachdem der vorhergehende Artikel "Die dritte Dimension" einen Blick hinter die Kulissen geliefert hat, wollen wir nun zeigen, wie Sie selbst die 3D-Unterstützung Ihrer Grafikkarte unter Linux aktivieren können.
  • Gamezone
    Spiele für Linux? Gibt es die denn überhaupt? Ja, und zwar mehr als Mancher vermuten mag. Wir bieten an dieser Stelle einen Überblick über die beliebtesten Spiele und zeigen Wege aus dem Installationsirrgarten.
  • 3D-Power unter Linux
    Die Auswahl an Spielen für Linux ist mittlerweile groß. Ob First-Person-Shooter oder Märchenabenteuer – die ganze Bandbreite wird abgedeckt. Aber die volle Pracht entfalten heutige 3D-Spiele nur, wenn sie auf "der richtigen" Hardware laufen.
  • XFree86 4.0 - die neue Version
    Microsoft wirbt für sein Betriebsystem Windows mit einer Funktion, die es erlaubt, zwei Grafikkarten gleichzeitig zu betreiben. Das neue XFree86 4.0 geht einen Schritt weiter und steuert unter Linux gleich eine ganze Monitorwand. In diesem Artikel sagen wir Ihnen, was XFree86 überhaupt ist und was die neue Version 4.0 auch für Anwender bringt, die ein solches Bildschirmmonster nicht ihr Eigen nennen.
  • 3D-Grafik – Die Grundlagen
    Das Genre der 3D-Spiele boomt in der Windows-Welt in letzter Zeit gewaltig. Damit auch unter Linux die 3D-Frame-Raten in die Höhe schnellen, benötigt man spezielle 3D-Treiber, die das Optimum aus der eingebauten Grafikkarte herausholen.
Kommentare

Infos zur Publikation

LU 02/2016: Alt-PCs flott machen

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Der Tipp der Woche

Schon gewußt?

14.11.2015

Auch unter Ubuntu 15.10 kann man wieder mit dem Startmedienersteller (alias Startup Disk Creator) ein Live-System auf einem USB-Stick einrichten. ...

Fehler des Startmedienerstellers von Ubuntu 15.10 umgehen

Aktuelle Fragen

Tails Update
Val Lerie, 11.01.2016 10:51, 0 Antworten
Hallo zusammen, updaten > update Speichern unter > Persistent nicht möglich, mit der Meldung;...
Recoll
Jürgen Heck, 20.12.2015 18:13, 4 Antworten
Wie kann man mit Recoll nach bestimmten Zeichen/Satzzeichen bzw. Zeichenkombinationen suchen, z....
Wings Platinum 4 auf Linux?
Bodo Steguweit, 18.12.2015 11:37, 4 Antworten
Hallo in die Runde ich nutze für meine Diashows Wings Platinum 4 als Diareferent. Arbeite jetzt...
Bandbreite regulieren
Georg Armani, 25.11.2015 16:50, 1 Antworten
Hallo, ich bin ein Neuling in Sachen Linux und hoffe auf Hilfe. Ich habe zwei Windows Rechner...
Windows 10 verhindert LINUX
Hans Wendel, 17.11.2015 17:47, 8 Antworten
Hallo alle, mit einem W10-Laptop (vorher war Win7) wollte ich LINUX ausprobieren. Alles, was ni...