Comment activer le rendu Vulkan dans les jeux de vin à l'aide de DXVK

Comment activer le rendu Vulkan dans les jeux de vin à l'aide de DXVK
DXVK est un projet gratuit et open source qui traduit les appels Direct3D vers Vulkan dans Linux. Intégration avec la couche de compatibilité du vin, DXVK vous permet d'utiliser un rendu Vulkan dans les applications et jeux Direct3D (D3D9, D3D10 et D3D11).

DXVK fonctionne en remplaçant les fichiers «DLL» directs 3D existants dans des fichiers personnalisés qui convertissent les appels API directs3D en Vulkan. En conséquence, vous pouvez voir des graphiques améliorés, des performances accrues et une meilleure compatibilité dans les applications et jeux 3D. L'impact des performances de DXVK peut être drastique, améliorant les fréquences d'images globales dans la plupart des applications et jeux 3D. Bien que vous puissiez voir des résultats variés au cas par cas.

Installation de DXVK dans Linux

Vous pouvez télécharger la dernière version DXVK à partir de sa page GitHub. Pour configurer correctement DXVK, vous devez d'abord installer certains packages et configurer un préfixe de vin.

Pour commencer, activez les pilotes Vulkan à Ubuntu en exécutant la commande ci-dessous:

$ sudo apt installer Mesa-Vulkan-Drivers Mesa-Vulkan-Drivers: I386
libvulkan1 libvulkan1: i386

Redémarrez votre système pour terminer l'installation.

Ensuite, vous devrez installer des forfaits de vin. Je vous recommande d'installer des constructions de vin stables, mais DXVK fonctionnera également avec les constructions de développement. Pour installer des versions stables à vin dans Ubuntu, exécutez la commande ci-dessous:

$ sudo apt installer du vin

Notez que Ubuntu peut ne pas avoir les dernières constructions de vin incluses dans ses référentiels. Pour vérifier et installer la dernière construction de vin, suivez les instructions disponibles ici.

Maintenant que les packages nécessaires ont été installés, vous pouvez procéder à la configuration d'un nouveau préfixe de vin. Les préfixes de vin ne sont que des conteneurs isolés pour l'installation d'applications Windows dans Linux. C'est une bonne idée de créer un nouveau préfixe pour chaque application ou jeu que vous installez dans le vin. Puisqu'un préfixe n'a rien à faire avec un autre, les choses sont maintenues propres et sans se crash, entraînant moins de problèmes de compatibilité.

Exécutez la commande ci-dessous pour créer un nouveau préfixe nommé «Game» dans votre répertoire personnel:

$ Wineprefix = ”$ home / game” winecfg

Vous pouvez transmettre n'importe quel chemin vers la variable WinePrefix, assurez-vous simplement qu'il s'agit d'un chemin complet, pas de relatif.

DXVK est disponible pour les architectures 32 bits et 64 bits et il est important d'installer des fichiers DXVK pour l'architecture correcte. Par défaut, le vin créera un préfixe 64 bits. Cependant, vous pouvez spécifier manuellement une architecture en exécutant l'une des commandes ci-dessous:

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

Si vous avez suivi les étapes correctement jusqu'à présent, vous pouvez maintenant passer à l'installation réelle de DXVK dans un préfixe de vin. Extraire l'archive DXVK téléchargée et exécuter la commande ci-dessous à partir du dossier extrait pour rendre l'exécutable de script de configuration:

$ chmod + x setup_dxvk.shot

Avec la variable WinePrefix spécifiée, exécutez une commande dans le format suivant:

$ Wineprefix = ”$ home / jeu” ./ setup_dxvk.SH INSTALLATION

Vous pouvez remplacer la valeur WinePrefix par votre propre chemin. Attendez quelques secondes pour que l'installation se termine.

Pour désinstaller DXVK, exécutez la commande ci-dessous:

$ Wineprefix = ”$ home / jeu” ./ setup_dxvk.sh désinstalle

Comment confirmer si DXVK travaille dans une application ou un jeu?

Après l'installation de DXVK, vous voudrez peut-être vérifier si les bibliothèques DXVK et Vulkan sont utilisés correctement dans le jeu. Pour ce faire, préfixez votre commande de vin avec la variable d'environnement «dxvk_hud = 1».

$ Wineprefix = ”$ home / jeu” dxvk_hud = 1 lanceur de vin.exe

Si DXVK est correctement installé et utilisé dans votre jeu Direct3D, vous verrez un FPS HUD dans le coin supérieur gauche de l'écran:

Vous pouvez personnaliser l'affichage HUD à l'aide de diverses valeurs séparées de virgules expliquées ici.

Si vous ne souhaitez pas utiliser DXVK HUD, vous pouvez confirmer à partir de la sortie du terminal si DXVK est invoqué ou non. La sortie suivante montre que DXVK est utilisé dans un jeu après avoir exécuté un lanceur «EXE» dans un préfixe de vin:

Info: DXVK: V1.7.1
Info: Fournisseurs d'extension intégrés:
Info: Win32 WSI
Info: OpenVR
Warn: OpenVR: Échec du module
Info: Extensions d'instance activées:
Info: VK_KHR_SURFACE
Info: VK_KHR_WIN32_SURFACE
WARN: D3D9: VK_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
WARN: D3D9: VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT -> VK_FORMAT_B4G4R4A4_UNORM_PAC

Conclusion

Le projet DXVK a donné un énorme coup de pouce aux jeux non natifs à Linux. Son intégration profonde avec le vin a entraîné une amélioration massive des performances dans de nombreux jeux. DXVK a été entièrement intégré dans la couche de compatibilité des protons de Steam, qui est elle-même basée sur le vin. Si vous utilisez Steam pour télécharger et jouer à Windows Compatible Games, vous obtiendrez automatiquement la prise en charge de DXVK via Proton.