Linux-Grafiktreiber erhalten Direct3D-9-Unterstützung

Die Open-Source-Treiber für die 3D-Einheiten von GeForce- und Radeon-GPUs unterstützen neben OpenGL nun auch Microsofts Direct3D 9. Das kann die Performance beim Ausführen von Windows-Spielen mit Wine verbessern.

In Pocket speichern vorlesen Druckansicht 67 Kommentare lesen
Linux-Grafiktreiber erhalten Direct3D-9-Unterstützung
Lesezeit: 2 Min.
Von
  • Thorsten Leemhuis

Einige 3D-Treiber der von Linux-Distributionen eingesetzten Software Mesa verarbeiten neben OpenGL- nun auch Direct3D-9-Befehle. Das ist dem Gallium3D-State-Tracker "nine" zu verdanken, der in den Entwicklerzweig von Mesa eingezogen ist.

Dieser Gallium3D-State-Tracker kann die 3D-Performance erheblich verbessern, wenn auf Direct3D 9 angewiesene Windows-Software unter dem Windows-API-Nachbau Wine läuft. Dieser muss bislang Direct-3D-Befehle interpretieren und entsprechende OpenGL-Befehle generieren, um 3D-Beschleunigung nutzbar zu machen. Mit dem neuen State-Tracker kann sich ein leicht angepasstes Wine diesen Aufwand sparen, da es die Direct3D-Befehle zur Verarbeitung an den 3D-Treiber übergeben kann.

Ähnlich sollte das auch mit dem auf Wine aufbauenden und kommerziell vertriebenen CrossOver möglich sein, mit dem viele Windows-Spiele unter Linux laufen. Derzeit sieht es aber so aus, als wollen Wine und CrossOver den neuen State-Tracker nicht nutzen, um sich nicht mit zwei Direct3D-9-Implementationen herumschlagen zu müssen; Details liefern Beiträge einer erst kürzlich geführten und bislang ergebnislosen Diskussion (beispielsweise 1, 2).

Der State-Tracker funktioniert nur mit den in Mesa enthaltenen Treibern, die auf das in Mesa enthaltene Gallium3D aufbauen. Das ist etwa bei den Grafiktreibern der Fall, die viele Linux-Distributionen standardmäßig einrichten, um die 3D-Beschleunigung der meisten modernen GeForce- und Radeon-GPUs von AMD und Nvidia zu unterstützen. Die für Intel-GPUs eingerichteten Mesa-3D-Treiber bauen hingegen nicht auf Gallium3D auf, daher beherrschen sie nach wie vor kein Direct3D. Letzteres gilt auch für die proprietären 3D-Treiber von AMD und Nvidia.

Der neue State-Tracker steckt nicht nur im Entwicklerzweig, sondern auch in der ersten Vorabversion von Mesa 10.4; die finale Version dieser Versionsreihe soll Anfang Dezember erscheinen. Die dort enthaltenen 3D-Treiber werden zudem mehr OpenGL-4-Funktionen unterstützen als die der derzeit aktuellen Mesa-Version 10.3; bislang beherrscht allerdings keiner alle mit OpenGL 4.0 vorgeschriebenen Erweiterungen, daher melden die Treiber nach wie vor, maximal OpenGL 3.3 zu unterstützen.

Zum Grafikstack von Linux-Distributionen siehe auch die folgenden Artikel in c't 23/14:

  • Bilderwege – Die Grafiktreiber-Architektur von Linux
  • Diagnosepunkte – Probleme mit den Grafiktreibern von Linux lösen
  • Bye-bye X-Server – Wayland vereinfacht den Grafikstack von Linux

(thl)