(Windows-)Spiele unter Linux

soulsource

Quest-Mob
Mitglied seit
19.06.2007
Beiträge
68
Reaktionspunkte
0
Kommentare
28
Buffs erhalten
13
So, es hat lange gedauert, aber jetzt gebe ich den Bericht über die Installation von World of Warcraft ab.

Um Anwendungen, die nur für Windows verfügbar sind, unter Linux, MacOS, BSD und vielen anderen Betriebssystemen zum Laufen zu bringen, nutzt man einen Kompatibilitäts-Layer namens W.I.N.E.. Dieser lenkt die Aufrufe vieler Funktionen aus Windows-Bibliotheken auf die gleichen Funktionen der Standard-Bibliotheken um. Da sich Microsoft versucht, mit allen alten Anwendungen kompatibel zu bleiben, egal wie schlecht diese geschrieben waren, ist es für die W.I.N.E.-Entwickler ein Kampf gegen Windmühlen, die volle Funktionalität eines Windows-Systems nachzubilden. In Anbetracht dieser unmöglich scheinenden Aufgabe, haben sie hervorragende Arbeit geleistet, sehr viele Programme laufen, ohne neu kompiliert werden zu müssen. Leider gibt es immer noch genug Software, die man mit W.I.N.E. nur eingeschränkt oder gar nicht nutzen kann.

Der erste Schritt der Spiele-Installation ist also, ebendiesen W.I.N.E. zu installieren. In den Paketquellen finden sich 2 Versionen: wine (stabil) und wine1.2 (beta). Ich nutzte anfangs wine1.2, stellte aber relativ schnell fest, dass es Sound-Probleme gibt. Um diese zu beheben, fügte ich das ppa von Neil Wilson als Paketquelle hinzu und führte ein Software-Update durch. Neil stellt eine W.I.N.E.-Version bereit, die mit dem neuen Ubuntu-Software-Mixer "Pulseaudio" besser umgehen kann (ich halte PulseAudio für einen Schritt in die falsche Richtung - wofür gibt es ALSA mit dmix?). Um diesen Vorteil nutzen zu können, muss man bei den W.I.N.E.-Einstellungen (im Anwendungen-Menü unter Wine) unter Audio noch von ALSA auf PulseAudio umstellen.

Ich sparte mir die Installation von WoW und kopierte einfach den installierten Ordner von der angelgten Sicherung ins virtuelle c-Laufwerk von wine (normalerweise ~/.wine/drive_c). Eigentlich war das Spiel damit schon lauffähig, aber um die bestmögliche Performance zu erreichen, kann man von Direct3D, welches von W.I.N.E. erst auf OpenGL umformuliert werden muss, auf die in WoW enthaltene OpenGL-Ausgabe wechseln. Hier kommt es den Linux-Nutzern zu Gute, dass Blizzard eine Mac-Version von WoW veröffentlichte. Um diese Funktion zu aktivieren, trägt man irgendwo in der WTF/Config.wtf
Code:
SET gxApi "opengl"
ein.

Der Launcher ist im Moment verbuggt (ändert die Benutzerrechte so, dass man selbst den WoW-Ordner nicht mehr lesen darf), man sollte das Spiel lieber über die Wow.exe starten. Um das zu tun, machte ich mir auf dem Desktop eine Verknüpfung mit
Code:
wine "C:SpieleWorld of WarcraftWoW.exe"
als Ziel (Pfad muss man natürlich anpassen). Ein Symbol dazu gibts auf der WoW-Wiki.

Doppelt drauf geklickt, und schon startet WoW. Die erste, und wohl wichtigste Änderung an den Grafikeinstellungen ist, dass ich WoW vom Vollbild- auf Fenstermodus umstelle. Diesen lasse ich maximiert laufen. So ist es möglich, bei aktiven Desktop-Effekten die virtuelle Arbeitsfläche zu wechseln, ohne dass WoW seltsame Sachen macht (wie unwiderbringlich minimiert zu werden, oder einfach "halb" im Vordergrund weiterzulaufen). Die Spielperformance ist gleich mies, egal ob als maximiertes Fenster oder als Vollbildanwendung. Schuld sind wohl die fglrx-Treiber...

Um dennoch bessere Framerates zu erhalten, kann man nach dem Spielstart als Superuser die Priorität von WoW erhöhen. Dazu lässt man mit
Code:
ps -A | grep Wow.exe
alle laufenden Anwendungen anzeigen und nach Wow.exe durchsuchen. Die erste Spalte ist (normalerweise) die PID. Unter Ubuntu ruft man dann mittels
Code:
sudo renice -10 -p ###
renice als super user auf. -10 bedeutet, dass der Prozess, welcher mit -p ### (### steht hier für die PID) ausgewählt wird, auf Niceness -10 gesetzt wird (also anderen Andwendungen weniger CPU-Zeit übrig lässt). Niceness kann zwischen -20 und 20 liegen. Nur Superuser können negative Werte setzen. Sollte ich noch weitere Performance-steigernde Einstellungen entdecken, werde ich sie hier posten.
Der übliche Registry (ja, wine hat auch den Schrott dabei) Tweak, bei dem eine OpenGL-Erweiterung deaktiviert wird, brachte mir nichts.
 
Zurück