Valve a mis à jour VKD3D-Proton, le composant qui traduit Direct3D 12 en Vulkan pour Steam Play, en ajoutant la prise en charge de VK_EXT_descriptor_heap. Cette extension, disponible depuis Vulkan 1.4.340, permet de contrôler directement la mémoire des descripteurs, ce qui améliore la portabilité et offre des performances plus stables dans les jeux utilisant Direct3D 12.
Comment fonctionne l'extension VK_EXT_descriptor_heap 🛠️
L'extension remplace la gestion automatique des descripteurs par une gestion explicite, où le développeur alloue et libère la mémoire pour les ressources graphiques. Cela évite les goulots d'étranglement dans les pilotes comme ceux de NVIDIA, où l'allocation dynamique provoquait des chutes de performances dans les titres exigeants. En déléguant le contrôle à l'utilisateur, les appels au pilote sont réduits et des performances plus prévisibles sont obtenues, en particulier dans les scénarios avec de nombreux objets ou textures.
Le jour où les descripteurs ont cessé d'être un mystère 🎲
Jusqu'à présent, les pilotes géraient les descripteurs comme une chaussette perdue dans la machine à laver : ils apparaissaient quand ils voulaient et se coinçaient parfois. Avec cette extension, les développeurs peuvent dire je contrôle ça et les pilotes NVIDIA cessent de jongler. C'est comme passer d'un jeu de hasard à un manuel d'instructions, même si un programmeur doit déjà regretter l'excitation du chaos.