Linux Gaming: Direct3D 9 auf Linux portiert

SimonG

Software-Overclocker(in)
Direct3D nativ auf Linux

Der Entwickler Christoph Bumiller, der sonst an einem quelloffenen Linux 3D-Treiber für Nvidia Karten (nouveau) arbeitet, hat eine Implementierung von Direct3D 9 für Linux entwickelt.
Ein ähnliches Projekt, welches Direct3D 10/11 bereitstellen sollte, verschwand jedoch wieder von der Bildfläche, da es schlecht gepflegt war und sich in einem unbrauchbaren Zusand befand.
Im Gegensatz dazu ist Christoph Bumillers Projekt bereits jetzt in der Lage, über eine modifizierte Version von Wine, aktuelle D3D9 Spiele, ohne den Umweg über den OpenGL-Wrapper, laufen zu lassen. Zu den getesteten Spielen gehören Skyrim, Civilization 5, Anno 1404, und StarCraft 2, wobei im besten Fall eine Performanceverbesserung um das zweifache erreicht wurde, gegenüber einer ungepachten Version von Wine.
Detaillierte Benchmarks fehlen derzeit noch. Ich hoffe Michael Larabel von Phoronix nimmt sich dessen an.

Da Christoph Bumiller die Gallium3D API verwendet, um Direct3D bereitzustellen, ist die seine D3D9-Implementierung nur nutzbar wenn Grafiktreiber verwendet werden, die ebenfalls auf diesem System aufbauen. Momentan sind das nur die akutellen open-source Treiber "radeon" für AMD und "nouveau" für Nvidia. Die offiziellen closed-source Treiber der Grafikkartenhersteller, welche mehr Leistung bereitstellen, setzen auf ein anderes System, womit sich nur OpenGL nutzen lässt.

Es bleibt zu hoffen, dass sich dieses Projekt besser hält als der zuvorgehende Versuch mit D3D10, welcher von den Wine-Entwicklern abgelehnt wurde, da es eine Linux-speziefische Lösung war. Das trifft zwar auch für auf dieses Projekt zu, mit etwas Glück entscheiden sich die Wine-Entwicker aber dieses mal anders, um zumindest Linux Nutzern eine wesentlich verbesserte 3D-Leistung bieten zu können.

Quelle: Phoronix, Mesa-dev (Christoph Bumiller)
 
Zuletzt bearbeitet:
Wenn ein Projekt wie Gallium3D die Direct 3D API nutzbar machen kann, müssten es die geschlossenen Treiber es eigentlich auch implementieren können. Würde, aber nur die Wine Performance verbessern.

Im Prinzip ist das nur für Leute mit AMD Karten wirklich interessant. Deren offener Treiber ist im Vergleich zu AMD Catalyst nicht soo viel schlechter. Da könnte eine Verdoppelung der Performance in Wine zumindest den geschlossenen Treiber schlagen. Bei NVIDIA ist der geschlossene Treiber sowieso 3x schneller als nouveau. Für Intel iGPUs gibt es sowieso nur den offenen Treiber und der nutzt kein Gallium3D.

Für den 3.11 Linux Kernel wird es ein ziemlich dicken Patch für die Unterstützung des freien AMD Treiber geben und zahlreiche Power Managment Features eingeführt und verbessert.

[Phoronix] AMD Has Massive Radeon Patch Set - Power Management!

Am besten ist man nach wie vor mit einer NVIDIA Karte aufgehoben, auch wenn sich auf der AMD Seite viel bewegt und die Catalyst Treiber wohl deutlich besser geworden sein sollen.
 
Der AMD Catalyst Treiber steht dem Nvidia Pendant mittlerweile in nichts mehr nach. Ich hatte weder auf dem Laptop noch auch dem Desktop (meines Bruders) Probleme damit. Auf meinem Rechner nutze ich den open-source Treiber, weil der Legacy Catalyst (HD4870) den aktuellen X-Server nicht mehr unterstützt. Von daher ist es eigentlich egal, welche Hardware man hat.
Die Treiberunterstützung ist heutzutage echt wirklich gut geworden. Ich neige soagr dazu AMD Hardware zu empfehlen, da die die open-source Treiberentwicklung unterstützen bzw. tatkräftig mitarbeiten. Aber seit Valve mit Nvidia kooperiert haben wohl beide Parteien ihre Vorzüge.
 
:daumen: Ne feine Sache, damit würde sich Linux zu einer ernsthafteren alternative entwickeln.
:-) Das Fundament von von MS bröckelt immer mehr, als Spieler kann man nur hoffen das daraus auch wirklich was vernünftiges wird, uns sich dadurch auch MS wieder etwas mehr anstrengen muss.
 
Der AMD Catalyst Treiber steht dem Nvidia Pendant mittlerweile in nichts mehr nach. Ich hatte weder auf dem Laptop noch auch dem Desktop (meines Bruders) Probleme damit. Auf meinem Rechner nutze ich den open-source Treiber, weil der Legacy Catalyst (HD4870) den aktuellen X-Server nicht mehr unterstützt. Von daher ist es eigentlich egal, welche Hardware man hat.
Die Treiberunterstützung ist heutzutage echt wirklich gut geworden. Ich neige soagr dazu AMD Hardware zu empfehlen, da die die open-source Treiberentwicklung unterstützen bzw. tatkräftig mitarbeiten. Aber seit Valve mit Nvidia kooperiert haben wohl beide Parteien ihre Vorzüge.

Der Catalyst bietet immernoch keine sinnvolle Möglichkeit zur Videobeschleunigung. Massives Tearing gibt's frei haus, und wenn man glückt hat, bekommt ein Video per Xv wiedergegeben sogar den ganzen Xserver zum Absturz... Also zumindest hier bevorzug ich meinen zweitrechner (mit deutlich schwächeren) nVidia Karte...
Der offene Treiber ist zwar nett - und kann mittlerweile sogar Videobeschleunigung - ist mir aber zum einen deutlich zu langsam...
 
Also auf meinem Laptop habe ich mit dem Catalyst Videobeschleunigung. Allerdings musste man dafür extra Pakete installieren. Leider weiß ich nicht mehr auswendig welche (irgendwas mit xvba). Da kann man jedenfalls was machen. Damit schafft mein lahmer DualCore Laptop auch mit VLC HD-Videos ruckel- und tearingfrei. Wenn das bei Nvidia aber 'out of the box' funktioniert, ist das auf jeden Fall ein Vorteil.
 
Der VA-API Wrapper, den du vermutlich meinst, wird schon länger nicht mehr entwickelt. Damals hatte ich damit praktisch nur Probleme - von falschen Farben über Crashes war alles dabei. Keine Ahnung, ob der Fehler beim Wrapper oder beim Treiber lag, aber wenn ich Fremdsoftware als Wrapper verwenden muss, um ein Treiberfeature verwenden zu können, find ich das ehrlich gesagt eh nicht prickelnd.
Alternativ gibt's meine ich noch das xbmc, ich meine, das ist (neben Fluendo?) Programm, dass mit der API umgehen kann... Featuretechnisch (Codecs, Deinterlacing) ist nVidia auch besser (wenn nicht sogar am besten, bin mir grad nicht sicher, was intel alles kann) aufgestellt.
 
Ob der Wrapper nicht mehr entwickelt wird ist mir eigentlich schnuppe (er ist seit 2009 offiziell Teil von libva). Die Software funktioniert bei mir fehlerfrei. Einfach das Packet aus der Verwaltung installieren und schon laufen die Videos flüssig.
Gut, bei Nvidia brauchts kein extra Paket und es gibt einen MPEG(II) decoder. Intel ist bei der Thematik sowieso ganz vorne mit dabei, immerhin war VA-API deren Erfindung. Blöderweise haben auch Nvidia (vdpau) und AMD (xvba) jeweils ein eigenes Süppchen gekocht. Damit hat AMD den wahrscheinlich schlechtesten Support, was Multimedia angeht. Trotzdem bin ich zufrieden, denn alles läuft problemlos.
 
Ich glaube Valve war noch nie Anhänger von irgendwas. Aber für die Portierung der Source-Engine auf Linux haben sie sich Tipps von Nvidia geholt, wie sie die beste Leistung bekommen.
 
wenn die meisten LINUX distris endlich mit allen spielen laufen würden, wäre windows und co. für mich endgültig schnee von gesten. :daumen:

mfg
 
Zurück