Jak włączyć renderowanie Vulkan w grach winiarskich za pomocą DXVK

Jak włączyć renderowanie Vulkan w grach winiarskich za pomocą DXVK
DXVK to bezpłatny i open source, który tłumaczy połączenia Direct3D do Vulkan w Linux. Integrując z warstwą zgodności z winem, DXVK pozwala używać renderera Vulkan w aplikacjach i grach Direct3D (D3D9, D3D10 i D3D11).

DXVK działa, zastępując istniejące pliki „DLL” Direct3D w winie na niestandardowe pliki, które konwertują wywołania API Direct3D do Vulkan. W rezultacie możesz zobaczyć ulepszoną grafikę, zwiększoną wydajność i lepszą kompatybilność w aplikacjach i grach 3D. Wpływ wydajności DXVK może być drastyczny, co poprawia ogólną liczbę klatek na sekundę w większości aplikacji i gier 3D. Chociaż możesz zobaczyć różnorodne wyniki w poszczególnych przypadkach.

Instalowanie DXVK w Linux

Możesz pobrać najnowszą kompilację DXVK ze strony Github. Aby poprawnie skonfigurować DXVK, musisz najpierw zainstalować niektóre pakiety i skonfigurować prefiks wina.

Na początek włącz sterowniki Vulkan w Ubuntu, uruchamiając poniższe polecenie:

$ sudo apt Zainstaluj mesa-vulkan-drivers mesa-vulkan-drivers: i386
libvulkan1 libvulkan1: i386

Uruchom ponownie system, aby zakończyć instalację.

Następnie będziesz musiał zainstalować pakiety wina. Poleciłbym zainstalować stabilne kompilacje wina, ale DXVK będzie również współpracować z kompitalami rozwojowymi. Aby zainstalować stabilne wina kompilacje w Ubuntu, uruchom poniższe polecenie:

$ sudo apt instontuj wino

Zauważ, że Ubuntu może nie mieć najnowszych kompilacji wina w jego repozytoriach. Aby sprawdzić i zainstalować najnowszą wersję wina, postępuj zgodnie z instrukcjami dostępnymi tutaj.

Teraz, gdy zainstalowano niezbędne pakiety, możesz przejść do konfiguracji nowego prefiksu wina. Prefiks wina to tylko izolowane kontenery do instalowania aplikacji Windows w Linux. Dobrym pomysłem jest stworzenie nowego prefiksu dla każdej aplikacji lub gry, którą instalujesz w winie. Ponieważ jeden prefiks nie ma nic wspólnego z innym, sprawy są czyste i wolne od awarii, co powoduje mniej problemów z kompatybilnością.

Uruchom poniższe polecenie, aby utworzyć nowy prefiks o nazwie „gra” w katalogu domowym:

$ Wineprefix = ”$ home/game” winecfg

Możesz przejść dowolną ścieżkę do zmiennej WinePrefix, po prostu upewnij się, że jest to pełna ścieżka, a nie względna.

DXVK jest dostępny zarówno dla architektury 32-bitowej, jak i 64-bitowej i ważne jest, aby zainstalować pliki DXVK dla prawidłowej architektury. Domyślnie wino stworzy 64-bitowy prefiks. Możesz jednak ręcznie określić architekturę, uruchamiając dowolną z poniższych poleceń:

$ Winearch = win64 wineprefix = ”$ home/game” winecfg
$ Winearch = win32 wineprefix = ”$ home/game” winecfg

Jeśli do tej pory postępowałeś poprawnie, możesz przejść do faktycznej instalacji DXVK w prefiksie win. Wyodrębnij pobrane archiwum DXVK i uruchom poniższe polecenie z wyodrębnionego folderu, aby ustawić skrypt ustawienia wykonywalny:

$ chmod +x setup_dxvk.cii

Z określoną zmienną WinePrefix uruchom polecenie w następującym formacie:

$ Wineprefix = ”$ home/game” ./setup_dxvk.sh instalacja

Możesz zastąpić wartość WinePrefix własną ścieżką. Poczekaj kilka sekund, aż instalacja zakończy się.

Aby odinstalować DXVK, uruchom poniższe polecenie:

$ Wineprefix = ”$ home/game” ./setup_dxvk.SH odinstaluj

Jak potwierdzić, czy DXVK pracuje w aplikacji lub w grze?

Po zainstalowaniu DXVK możesz sprawdzić, czy biblioteki DXVK i Vulkan są prawidłowo używane w grze. Aby to zrobić, poprzedzaj polecenie wina za pomocą zmiennej środowiskowej „dxvk_hud = 1”.

$ Wineprefix = ”$ home/game” dxvk_hud = 1 wyrzutnia wina.exe

Jeśli DXVK jest prawidłowo zainstalowany i jest używany w grze Direct3D, zobaczysz HUD FPS w lewym górnym rogu ekranu:

Możesz dostosować wyświetlacz HUD przy użyciu różnych wartości oddzielonych przecinków wyjaśnionych tutaj.

W przypadku, gdy nie chcesz używać DXVK HUD, możesz potwierdzić z wyjścia terminala, jeśli DXVK jest wywoływany, czy nie. Poniższe wyjście pokazuje, że DXVK jest używany w grze po uruchomieniu wyrzutni „exe” w prefiksie wina:

Informacje: DXVK: v1.7.1
Informacje: Wbudowani dostawcy rozszerzeń:
Informacje: Win32 WSI
Informacje: OpenVR
ostrzeżenie: OpenVR: Nie udało się zlokalizować modułu
Informacje: Włączone rozszerzenia instancji:
Informacje: vk_khr_surface
Informacje: vk_khr_win32_surface
Ostrzegaj: d3d9: vk_format_d24_unorm_s8_uint -> vk_format_d32_sfloat_s8_uint
Ostrzegaj: d3d9: vk_format_a4r4g4b4_unorm_pack16_ext -> vk_format_b4g4r4a4_unorm_pac

Wniosek

Projekt DXVK zyskał ogromny wzrost gier nie rdzennych w Linux. Jego głęboka integracja z winem spowodowała ogromną poprawę wydajności w wielu grach. DXVK został w pełni zintegrowany z warstwą kompatybilności protonów Steam, która sama opiera się na winie. Jeśli używasz Steam do pobierania i grania w gry kompatybilne z systemem Windows, automatycznie otrzymasz obsługę DXVK przez proton.