3D-Grafik – Die Grundlagen

Die dritte Dimension

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.

Seit einigen Monaten gibt es für die meisten auf dem Markt erhältlichen 3D-Grafikkarten "Linux-Treiber", die sich hinsichtlich 3D-Performance und Stabilität in aller Regel nicht mehr hinter ihren Windows-Kollegen zu verstecken brauchen. Damit entfällt einer der bislang größten Hürden für die Etablierung von Linux als gleichberechtigte Plattform für 3D-Anwendungen. In diesem Artikel möchten wir Ihnen etwas Hintergrundwissen zum spannenden Thema Linux und 3D-Grafik vermitteln.

Kommunikation mit der Hardware

Heutzutage sitzt auf praktisch jeder Grafikkarte ein komplexer Grafik-Chip, der spezielle Funktionen bereitstellt, mit denen die Aufbaugeschwindigkeit von 2D- und 3D-Objekten auf dem Bildschirm deutlich beschleunigt werden kann. Die Betonung liegt auf "kann", denn ob das auch tatsächlich geschieht, hängt ganz entscheidend von der Qualität der auf dem jeweiligen Betriebssystem installierten Treiber-Software ab.

Unter Linux und anderen Unix-Derivaten übernimmt traditionsgemäß der X-Server, eine ganz normale Anwendung im User-Space, die Aufgabe, die Darstellungswünsche von hochauflösenden Anwendungen an die Grafik-Hardware zu übermitteln. Sieht man einmal von einigen kommerziellen X-Servern wie z. B. Xi Graphics (http://www.xig.com) ab, dann läuft heutzutage auf den meisten Linux-Rechnern ein X-Server des Open-Source-Projekts XFree86 (http://www.xfree86.org).

Es ist noch gar nicht so lange her, dass man für jeden Grafik-Chip-Typ einen eigenen X-Server schreiben musste. Angesichts der Tatsache, dass der Quelltext der XFree86-Server für jedermann (und damit auch potentiell für die jeweilige Konkurrenz des Grafik-Chip-Herstellers) offen zugänglich war, sperrten sich viele Chip-Hersteller dagegen, die für die Entwicklung von optimalen X-Servern notwendigen Hardware-Spezifikationen an die XFree86-Entwickler weiterzugeben.

Seit XFree86 Version 4 haben Chip-Hersteller die Möglichkeit, auch für Linux performante Grafikkartentreiber bereitzustellen, ohne den Quellcode offenlegen zu müssen. Doch dazu weiter unten mehr.

Direct3D vs. OpenGL

Wer heutzutage ein kommerzielles Spiel entwickelt, hat angesichts der Umständlichkeit und der mit dem Spielumfang stark ansteigenden Komplexität keine Lust, jede von der Grafikkarte hardware-mäßig unterstützte Funktion mit Maschinencode-Befehlen (Assembler) anzusteuern, zumal in einem solchen Fall ein Spiel nur auf der Grafikkarte funktionieren würde, auf der es geschrieben wurde.

Um dieses Bedürfnis der Entwickler nach weitestgehender Hardware-Unabhängigkeit zu befriedigen, entstanden einige Schnittstellen-Bibliotheken, die weitestgehend unabhängig von der zugrundeliegenden Grafikkarte rudimentäre Funktionen zum Zeichnen von 2D- bzw. 3D-Gebilden bereitstellen sollten.

Heutzutage konkurrieren vor allem noch Direct3D von Microsoft und OpenGL von SGI (http://www.sgi.com) um die Gunst der Entwickler. Direct3D ist – wer hätte es anders gedacht – nur für Microsoft-Betriebssysteme verfügbar. OpenGL-Implementationen gibt es dagegen auf nahezu allen Plattformen.

Unter Linux hat sich insbesondere die freie OpenGL-verwandte 3D-Grafikbibliothek Mesa (http://www.mesa3d.org/) einen Namen gemacht. Damit sich komplexe Spiel-Grafiken noch schneller erstellen lassen, setzen die meisten Hersteller heute in aller Regel eigenkreierte Baukasten-Bibliotheken (z. B. http://www.libsdl.org) oder gar vorgefertigte Spiele-Engines (z. B. http://crystal.linuxgames.com/) ein. Diese setzen aber im Prinzip alle (auch) auf den basalen Befehlssätzen von Direct3D oder OpenGL auf.

LinuxCommunity kaufen

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

Deutschland

Ähnliche Artikel

  • 3D-Grafik unter X: Die Grundlagen
    Langsam etabliert sich Linux auch im Heimbereich. Dort darf eine Unterstützung von 3D-Grafikkarten selbstverständlich nicht fehlen. Wir zeigen, wie unter Linux die virtuellen Welten auf den Bildschirm gelangen.
  • 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.
  • 3D-Support für Nvidia-Karten einrichten
  • 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.
  • Linuxtaugliche Hardware-Komponenten
    "Treiber oder nicht Treiber?", das ist hier die Frage des Linux-Einsteigers, wenn er einen Rechner mit dem freien Betriebssystem beglücken möchte. Die Treiberabdeckung für PC-Komponenten ist zwar inzwischen sehr ansehnlich, aber ein Stück Hardware einfach blind zu kaufen kann zu großem Verdruss führen. Dem kann man aber vorbeugen.
Kommentare

Infos zur Publikation

LU 12/2016: Neue Desktops

Digitale Ausgabe: Preis € 5,99
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

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

Aktuelle Fragen

Drucker Epson XP-332 unter ubuntu 14.04 einrichten
Andrea Wagenblast, 30.11.2016 22:07, 2 Antworten
Hallo, habe vergeblich versucht mein Multifunktionsgerät Epson XP-332 als neuen Drucker unter...
Apricity Gnome unter Win 10 via VirtualBox
André Driesel, 30.11.2016 06:28, 2 Antworten
Halo Leute, ich versuche hier schon seit mehreren Tagen Apricity OS Gnome via VirtualBox zum l...
EYE of Gnome
FRank Schubert, 15.11.2016 20:06, 2 Antworten
Hallo, EOG öffnet Fotos nur in der Größenordnung 4000 × 3000 Pixel. Größere Fotos werden nic...
Kamera mit Notebook koppeln
Karl Spiegel, 12.11.2016 15:02, 2 Antworten
Hi, Fotografen ich werde eine SONY alpha 77ii bekommen, und möchte die LifeView-Möglichkeit nu...
Linux auf externe SSD installieren
Roland Seidl, 28.10.2016 20:44, 1 Antworten
Bin mit einem Mac unterwegs. Mac Mini 2012 i7. Würde gerne Linux parallel betreiben. Aber auf e...