La version du pilote DXVK 3.0 est disponible, offrant une implémentation de DXGI (DirectX Graphics Infrastructure), Direct3D 8, 9, 10 et 11, fonctionnant via la traduction des appels en API Vulkan. Pour utiliser DXVK, des pilotes prenant en charge l'API Vulkan 1.4 sont nécessaires, tels que NVIDIA 575.51.02, Mesa AMD RADV 25.0, NVIDIA 25.1 et Intel ANV 25.1. DXVK peut être utilisé pour exécuter des applications et des jeux 3D sur Linux via Wine, servant d'alternative plus performante aux implémentations Direct3D intégrées dans Wine, fonctionnant au-dessus d'OpenGL.
Principales modifications :
- Pour tous les modèles de shader pris en charge, le compilateur de shader dxbc-spirv est utilisé. La compilation des shaders a été déplacée du thread principal vers des threads séparés.
Mise en œuvre du cache sur disque pour la représentation intermédiaire des shaders (le cache est enregistré dans le sous-répertoire AppData/Local dans le préfixe Wine actuel).
L'utilisation de dxbc-spirv a permis de réduire la consommation de mémoire, de diminuer le temps de démarrage, d'éliminer les blocages et de résoudre plusieurs problèmes rencontrés dans les jeux Postal: Brain Damaged, Snowrunner, Overwatch, God of War, Days Gone et Final Fantasy XIV, qui ne pouvaient pas être corrigés avec l'ancien code de traduction des shaders. - Pour D3D9, le support des modèles de shader 1-3 a été implémenté.
- Par défaut, l'extension Vulkan VK_EXT_descriptor_heap est utilisée. Comparée au stockage de descripteurs précédemment utilisé basé sur l'extension Vulkan VK_EXT_descriptor_buffer, la nouvelle mise en œuvre offre le même niveau de performance pour les opérations exécutées sur le CPU, mais réduit la charge sur le GPU, en particulier lors de l'utilisation des cartes graphiques NVIDIA. Pour fonctionner sur des systèmes équipés de cartes graphiques NVIDIA, une version d'au moins les pilotes propriétaires NVIDIA 595.84 est requise. La mise en œuvre basée sur VK_EXT_descriptor_buffer a été déclarée obsolète et sera supprimée dans l'une des prochaines versions.
Dans la mise en œuvre de Direct3D 9, au lieu de générer des shaders à la volée, des uber-shaders sont désormais utilisés, dont les versions optimisées sont compilées en arrière-plan, ce qui a résolu les problèmes de blocage de certains anciens jeux, tels qu'Unreal Tournament 2004. Le chargement des tampons au besoin est assuré, comme sous Windows, au lieu de les placer à l'avance dans la mémoire vidéo, ce qui a éliminé les plantages de certains jeux 32 bits D3D9 à cause de l'espace d'adresse limité. - La mise en œuvre de Direct3D 9 utilise à présent des uber-shaders, dont les versions optimisées sont compilées en arrière-plan, ce qui a résolu les problèmes de blocage de certains anciens jeux, tels qu'Unreal Tournament 2004. Le chargement des tampons se fait au besoin, comme sous Windows, plutôt que d'être réservé à l'avance dans la mémoire vidéo, ce qui a éliminé les plantages de certains jeux D3D9 32 bits en raison d'un espace d'adresse limité.
- Le fonctionnement correct du multi-échantillonnage (MSAA) est assuré en mode D3DRS_MULTISAMPLEANTIALIAS sur les systèmes prenant en charge les extensions Vulkan VK_EXT_sample_locations et VK_EXT_extended_dynamic_state3, ce qui a résolu les problèmes de rendu dans Anno 1701, Men of War et d'autres jeux lors de l'activation de MSAA.
- Support des ressources partagées (Shared resources) dans les versions standard de Wine sans patches supplémentaires du projet Proton.
- La variable d'environnement DXVK_FRAME_RATE, utilisée pour limiter le taux de rafraîchissement (Frame rate limiter), a été supprimée ; il est désormais recommandé d'utiliser des limiteurs externes comme Gamescope et Mangohud. Pour activer le limiteur intégré, vous pouvez utiliser le paramètre « dxvk.maxFrameRate = n ».
- Problèmes résolus dans les jeux :
- Bioshock Infinite
- Borderlands 2
- Colin McRae Rally 3
- Dirt Rally 2
- Fallout New Vegas
- Insurgency & Counter-Strike
- Jump Space
- Max Payne
- Railroad Tycoon 3
- Resident Evil 6
- Sang-Froid: Tales of Werewolves
- Sea Dogs
- Splinter Cell 4
- The I of the Dragon
- The Sims 3
- Total War: Pharaoh
- Witch on the Holy Night
- World of Final Fantasy
- Vietcong
- Les exigences pour la version minimale de l'API graphique ont été élevées à Vulkan 1.4.
Les versions minimales des pilotes requises sont désormais AMD RADV 25.0, NVIDIA 575.51.02, NVIDIA 25.1 et Intel ANV 25.1.
Source : opennet.ru
