Wine z Gallium Nine

O Wine już wiele razy pisałem, zresztą od  tego wziął się sam blog, ale nigdy nie wspominałem o Gallium. Uporządkujmy zatem te pojęcia. Wine jest warstwą pośredniczącą i potrafi m.in. tłumaczyć instrukcje DirectX na OpenGL. Gallium natomiast jest otwartą implementacją  API D3D9. Jeśli połączymy oba rozwiązania to krok translacji na OpenGL staje się zbędny, a my zyskujemy znacząco na wydajności!

Jest też powód, dla którego o Gallium mówi się trochę mniej (?)  jak i również brak tego rozwiązania w domyślnej wersje Wine. Otóż musimy używać otwartych sterowników i najlepiej jeśli posiadamy kartę od AMD. Notabene warto nadmienić, że AMD wspiera otwarte sterowniki poprzez udostępnianie dokumentacji dla swoich kart.

Dla kart Nvidia czyli otwartego sterownika Nouveau istnieje wsparcie, ale biorąc uwagę mizerię Nouveau i braku zainteresowania Nvidii w rozwijanie otwartych sterowników, zamknięty sterownik jest dużo lepszy jeśli chodzi o wydajność.

Zintegrowane Intele są wspierane jedynie poprzez nieoficjalny, eksperymentalny sterownik ilo. Oferta jedynie dla zapaleńców 🙂

Praktycznie we wszystkich dystrybucjach istnieją już przygotowane paczki. Nie ma potrzeby kompilacji. Zatem jeśli mamy otwarty sterownik AMD oraz dystrybucję:

 

Arch

Instalujemy pakiet wine-gaming-nine z AUR, mesa zapewne jest już zainstalowana

 

openSUSE (Leap/TW)

Pakiet Wine ~gallium_nine z repozytorium https://software.opensuse.org/package/wine home:pontostroy:gallium_nine

 

Ubuntu 16.04

W Ubuntu oprócz samej paczki Wine będziemy potrzebowali najnowsze wersji mesy. Jeśli korzystamy z innego wine:ppa to należy wpierw usunąć wine i zablokować ppa.

sudo apt-add-repository ppa:oibaf/graphics-drivers
sudo apt-add-repository ppa:commendsarnex/winedri3
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install wine

W razie problemów możemy odwrócić wszystkie operacje:

sudo apt-get install ppa-purge
sudo ppa-purge ppa:oibaf/graphics-drivers
sudo ppa-purge ppa:commendsarnex/ppa

 

Po instalacji należy odpalić winecfg i zaznaczyć w zakładce Staging opcję: Enable Gallium Nine…

winecfgW trakcie uruchomienia dowolnej aplikacji wykorzystującej d3dx9 warto obserwować terminal i kolor jednego z komunikatów:

screenZielony kolor oznacza aktywną, że mamy włączoną obsługę Gallium (Direct3D 9)

Pomarańczowy kolor oznacza nieaktywną obsługę i należy ją włączyć jak powyżej za pomocą winecfg

Czerwony kolor oznacza problem ze sterownikiem lub Wine.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.