Introduction
Les joueurs modernes sont habitués à attendre plusieurs minutes lors du lancement d'un nouveau jeu en raison de la compilation de shaders. Microsoft travaille actuellement sur une solution pour éliminer ces temps d'attente grâce à son infrastructure Advanced Shader Delivery pour Windows.
Contexte Technique
Dans un environnement de console, les développeurs peuvent optimiser et précompiler leurs shaders graphiques pour fonctionner correctement avec un ensemble de pilotes et de GPU spécifiques. Cependant, sur PC, les développeurs laissent généralement leurs shaders non compilés, ce qui les oblige à être compilés et mis en cache à l'exécution en fonction du matériel et des pilotes spécifiques de la machine du joueur.
Microsoft vise à résoudre ce problème en automatisant le processus de précompilation de shaders qui fonctionnent sur une grande matrice de pilotes et de GPU dans l'écosystème Windows. Les développeurs utilisent l'API Direct3D de Microsoft pour créer une base de données d'objets d'état (SODB) qui représente les ressources du jeu au niveau du moteur de jeu. Cette base de données d'actifs est ensuite alimentée dans plusieurs compilateurs de shaders pour créer une base de données de shaders précompilés (PSDB) qui prend en charge plusieurs adaptateurs d'affichage de différents fournisseurs de matériel.
Analyse et Implications
La PSDB peut être téléchargée avec le jeu, offrant ainsi des temps de chargement similaires à ceux des consoles sur PC. Cette base de données peut également être mise à jour automatiquement lorsque les fournisseurs de matériel mettent à jour leurs pilotes, permettant aux joueurs de télécharger un nouveau shader précompilé sous forme de correctif plutôt que de le recompiler localement chaque fois que leurs pilotes de matériel changent.
Perspective
Il est important de surveiller les prochaines étapes de Microsoft dans ce domaine, car cela pourrait avoir un impact significatif sur l'expérience de jeu sur PC. Les limites de cette technologie, telles que la compatibilité avec les différents matériaux et les pilotes, doivent également être prises en compte.