Ubuntu, Vulkan, MESA, Steam

Vor ein paar Wochen haben diverse Spiele, die ich unter Ubuntu 18.04 mittels Steam Play (d.h. Proton, was wiederum heißt: WINE) spielen konnte, aufgehört zu funktionieren. Hier eine kurze Notiz „an mich selbst“, wie ich es wieder hingekriegt habe (indem ich mich einer Schnittstellen- und Treiberhölle ausgesetzt habe):

  • Das Hauptproblem war wohl, dass DXVK nicht mehr funktioniert hat. DXVK nutzt Vulkan und ist heute scheinbar die bevorzugte Methode, wie WINE die Windows-DirectX-Aufrufe unter Linux umsetzt. Die Ursache dafür war wohl, dass Ubuntu 18.04 standardmäßig nur MESA 18.0.x mitbringt, aber Vulkan mittlerweile MESA 18.2.x benötigt.
  • Um das Problem zu umgehen, kann man in der Proton-Konfiguration einstellen, dass statt DXVK das ältere Wine3D verwendet wird. Dazu muss man erstmal in den Ordner der verwendeten Proton-Version (also 3.7, 3.16, 3.7 beta oder 3.16 beta) und dort die vorhandene Datei user_settings.sample.py in user_settings.py umbenennen. Mit einem Texteditor kann man dann den Eintrag # „PROTON_USE_WINED3D“: „1“, auskommentieren (also das # entfernen).
  • Mit dieser Methode starten die ganzen Spiele zwar wieder — aber ggf. fehlerhaft. Zum Beispiel wird bei Elder Scrolls Online in Außenaufnahmen der Boden nicht richtig dargestellt. Wine3D ist also keine Lösung; die Konfigurationsänderung machte ich wieder rückgängig.
  • Glücklicherweise fand ich dann folgende Seite: http://ubuntuhandbook.org/index.php/2018/10/mesa-18-2-2-available-install-ubuntu-18-04/ wo erklärt wird, mit welchem PPA man an ein für Ubuntu 18.04 angepasstes MESA 18.2.2 kommt. Das installierte ich also gleich.
  • Außerdem habe ich noch ein Update des NVidia-Treibers auf Version 415 vorgenommen; keine Ahnung, ob das wirklich nötig war, denn das Steam Play-Problem trat auch schon mit Treiberversion 396 auf, obwohl es mit 396 vorher noch lief.

Jedenfalls hat nach einem abschließenden Neustart des Computers endlich alles wieder funktioniert. Die Spiele starten und sehen aus wie sie sollen. Wenn sowas nochmal passiert, werde ich also erstmal schauen, ob es an MESA liegt. Wieder was gelernt.

(Auch wenn ich nicht ganz verstehe, warum MESA überhaupt nötig ist, denn alles OpenGL- und Vulkan-bezogene sollte eigentlich über den NVidia-Treiber laufen und der wird mir mit dem Befehl glxinfo | grep „OpenGL version“ auch angezeigt. Oder muss ich noch extra die NVidia-Vulkan-Treiber installieren? Aber gut, Hauptsache, es läuft jetzt…)

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.