Linux: Quelloffene 3D-Treiber beherrschen jetzt OpenGL 4.1

Einige Open-Source-Grafiktreiber für Grafikchips von AMD und Nvidia unterstützen jetzt OpenGL 4.1. Linux-Spiele können dadurch die Möglichkeiten moderner Grafikprozessoren jetzt besser nutzen und so realistischere Spielewelten schaffen.

In Pocket speichern vorlesen Druckansicht 3 Kommentare lesen
Lesezeit: 5 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

Linux-Spiele werden mit einigen der von Linux-Distributionen standardmäßig eingerichteten Grafiktreibern bald besser aussehen. Das ist dem jetzt erhältlichen Mesa 11.0 zu verdanken, denn zwei der darin enthaltenen 3D-Treiber und die Mesa-Kerninfrastruktur unterstützen jetzt erstmals OpenGL 4.1. Dadurch kann OpenGL-Software nun einige Funktionen moderner Grafikprozessoren nutzen, die über Mesa und seine 3D-Treiber bislang nicht erreichbar waren. Eine davon ist Tessellation, das 3D-Spiele nutzen, um Objekte und Spielfiguren möglichst plastisch darzustellen. Tesselation verfeinert dazu automatisch deren geometrische Struktur und stellt so auch feine Details klar heraus; aus eher zweidimensional wirkenden Pflastersteinen oder Dachziegeln werden mithilfe von Tessellation so realistischer aussehende 3D-Objekte.

OpenGL-4.1-Unterstützung in Mesa 11.0 (8 Bilder)

Das mit OpenGL 4.0 nutzbare Tessellation verleiht Hausmauer, Dachziegeln und Pflastersteinen Struktur.

OpenGL-4.1-Support gibt es nur bei den Radeonsi- und Nvc0-Treibern von Mesa, die viele der Grafikprozessoren von AMD und Nvidia unterstützen, die in den letzten vier bis fünf Jahren eingeführt wurden. Der in Mesa enthaltene 3D-Treiber für die Grafikprozessoren in Intel-Prozessoren implementiert bislang noch nicht alle der für OpenGL 4.0 und neuer verpflichtend vorgeschriebenen Erweiterungen; dasselbe gilt bei den Mesa-3D-Treiber für ältere Chips von AMD und Nvidia. Diese Treiber weisen daher nach wie vor maximal OpenGL-3.3-Support aus.

Linux-Distributionen richten Mesa und seine 3D-Treiber in der Regel standardmäßig ein, daher wird die OpenGL-Unterstützung mit der Systemaktualisierung oder neuen Versionen bald in Linux-Distributionen auftauchen. Die proprietären Treiber von AMD und Nvidia, die man zumeist nachinstallieren muss, unterstützen das Mitte 2010 definierte OpenGL 4.1 schon seit Jahren.

Größere praktische Bedeutung hat der OpenGL-4.1-Support allerdings nur bei AMDs Grafikprozessoren, die zu den Generationen "Southern Islands" oder "Sea Islands" zählen. Das umfasst das Gros der Bausteine auf Grafikkarten seit der Radeon HD 7750 und somit auch viele der aktuellen Radeon-Grafikkarten; auch die Grafikkerne vieler moderner AMD-Prozessoren gehören zu einer der beiden Generationen. Bei ihnen arbeitet der Radeonsi-3D-Treiber von Mesa 11.0 mit dem Kernel-Treiber "radeon" zusammen. Der unterstützt die Chips recht gut und entlockt ihnen viel ihres Leistungspotenzials; bei manchen Spielen kann er daher durchaus mit AMDs proprietärem Treiber mithalten oder diesen hin und wieder sogar übertrumpfen.

Ganz anders verhält es sich beim Nvc0-Treiber, der ein Teil des Nouveau-Treibers von Mesa ist. Er unterstützt die GPU-Generationen "Fermi" und "Kepler", die auf den meisten Grafikkarten der GeForce-Serien 400, 500 und 600 sowie einigen der 700er-Reihe sitzen. Beim Vergleich mit dem proprietären Linux-Treiber von Nvidia liefert die Nouveau-Treiberfamilie deutlich weniger 3D-Leistung, weil der zur Nouveau-Treiberfamilie gehörende Kernel-Treiber viele dieser Grafikprozessoren nicht in die schnellsten Modi schalten kann. Beim Desktop-Betrieb und älteren oder anspruchslosen Spielen ist die magere 3D-Leistung verschmerzbar, beim Spielen moderner 3D-Shooter hingegen nicht.

Der Nvc0-Treiber unterstützt auch die "Maxwell"-GPUs, zu der die Grafikprozessoren der neuesten GeForce-Grafikkarten gehören. Bei diesen vom Kernel-Treiber ohnehin derzeit nur dürftig unterstützten GPUs beherrscht der Nvc0-Treiber bislang kein OpenGL 4.1.

Auch beim Radeonsi-Treiber ist noch ein wichtiges Detail zu beachten: Zur OpenGL-4.1-Unterstützung muss man das vor einigen Tagen erschienene LLVM 3.7 installieren, denn Radeonsi greift auf dessen Amdgpu-Backend zurück.

Der Radeonsi-Treiber unterstützt mit Mesa 11.0 erstmals auch die Volcanic-Island-GPUs. Darunter sind der Chip der R9 285 oder die Bausteine auf den im Sommer eingeführten High-End-Grafikkarten R9 Fury und R9 Fury X. Bei ihnen liefert der OpenGL-4.1-taugliche 3D-Treiber aber bislang nur dürftige Performance, weil der zugehörige Kernel-Treiber die Grafikprozessoren nicht in die schnellsten Betriebsmodi schalten kann. Der passende Kernel-Treiber findet sich ohnehin erst seit dem Ende August erschienenen Linux 4.2 im offiziellen Kernel; die Unterstützung für die Chips der Fury-Grafikkarten bringt erst Linux 4.3.

Die Entwickler haben für die neue Mesa-Version zudem einige Verbesserungen vorgenommen, um die Performance von der Kerninfrastruktur von Mesa und einigen seiner 3D-Treibern zu verbessern. Die Intel-Entwickler haben einige Funktionen implementiert, die zur Unterstützung von OpenGL 4.1 und OpenGL ES 3.1 nötig sind. Der 3D-Treiber "freedreno", der die Grafikprozessoren vieler Snapdragon-Prozessoren von Qualcomm anspricht, beherrscht jetzt OpenGL ES 3.09 bei den GPUs der Serien a3xx und a4xx.

Wie bei größeren Überarbeitungen von Mesa üblich, gilt auch das jetzt erhältliche Mesa 11.0 als Entwicklerversion; auf Stabilität bedachte Anwender sollen auf Mesa 11.0.1 warten oder bei einer früheren Version bleiben. (thl)

Siehe dazu auch:

(thl)