Les Shaders ! En dix minutes
Cette vidéo explique ce que sont les shaders, pourquoi leur compilation est longue et source de saccades sur Linux, et comment le choix de votre distribution et de vos options Steam peut améliorer votre expérience de jeu.

SYNTHÈSE STRUCTURÉE
Qu’est-ce qu’un shader exactement ?
Un shader n’est ni une texture ni un polygone, mais un petit programme exécuté par votre carte graphique. Il gère tous les effets visuels à l’écran : lumières, ombres, reflets, eau, fumée, explosions, etc. Comme le dit l’intervenant : « les shaders gèrent à peu près tous les effets visuels que vous verrez à l’écran ». Sans eux, les jeux modernes n’auraient tout simplement pas le rendu que nous connaissons.
Pourquoi les shaders ne sont-ils pas fournis « prêts à l’emploi » avec le jeu ?
Un shader dépend de quatre facteurs : votre carte graphique, le pilote installé, l’API utilisée par le jeu (DirectX, Vulkan) et les réglages graphiques que vous avez choisis. Il est donc impossible de fournir un shader universel. L’intervenant précise : « ils peuvent pas arriver de manière générique. Il faut l’adapter à votre matériel et aux options graphiques que vous avez choisi. »
Pourquoi les saccades (stutters) apparaissent-elles en jeu ?
Quand vous changez d’environnement ou qu’un nouvel effet visuel apparaît, le CPU compile le shader correspondant en temps réel. Si cette compilation n’est pas assez rapide, le GPU ne reçoit pas l’information à temps, ce qui provoque un arrêt sur image. L’intervenant explique : « le CPU n’envoie pas l’information à temps pour le GPU. Donc booum, petit stutter. » C’est pourquoi les jeux qui ne compilent pas les shaders en amont sont plus sujets à ces saccades.
Pourquoi la compilation des shaders peut-elle durer des heures ?
La durée dépend de trois éléments matériels :
- Le CPU : un processeur trop juste allonge considérablement le temps de compilation.
- Le SSD (ou HDD) : un disque dur ou un SSD lent peut devenir le goulot d’étranglement et même figer le PC pendant la compilation.
- La RAM : une mémoire insuffisante empêche la compilation de se dérouler dans de bonnes conditions.
L’intervenant cite l’exemple de Monster Hunter Wild où « le temps de chargement est vraiment très long et en fonction de votre matos peut durer plusieurs heures ».
Le cas particulier de Linux : pourquoi c’est « violent » ?
Sur Linux, les jeux Windows passent par Proton, qui traduit les shaders DirectX en shaders Vulkan via DXVK ou VKD3D. Cette couche de traduction ajoute un temps de compilation supplémentaire. L’intervenant le dit clairement : « sur Linux, c’est quand même assez violent sur les shaders ». Cependant, une fois la compilation effectuée, les performances et le confort de jeu sont excellents.
Le cache des shaders : votre meilleur allié
Steam met en cache les shaders compilés. Ainsi, au lancement suivant, le jeu pioche dans ce cache et vous n’avez pas à attendre. Mais ce cache devient obsolète dès que vous changez :
- de pilote graphique (Mesa, Nvidia)
- de version de Proton
- de version de Vulkan ou VKD3D
- ou que le jeu reçoit une mise à jour
L’intervenant précise : « une simple mise à jour du jeu peut imposer de refaire le cache des shaders. »
Pourquoi les distributions stables sont un atout sur Linux
Si vous utilisez une distribution stable comme Debian, Ubuntu LTS ou GlfOS, la pile graphique évolue peu (tous les 6 mois environ). Votre cache de shaders reste donc valide plus longtemps. À l’inverse, avec Arch Linux, KaOS ou Fedora, les pilotes changent très souvent, ce qui invalide régulièrement le cache. L’intervenant conseille : « si vous êtes un peu juste pour la gestion des shaders, être basé sur une distribution stable peut être un petit atout. »
L’activation du préchargement des shaders dans Steam
Dans les options de Steam, activez le préchargement (pre-cache) des shaders. Cela permet de compiler les shaders en arrière-plan, avant de lancer le jeu, et évite les saccades en cours de partie. L’intervenant recommande : « vous laissez le préchargement des shaders, vous laissez Steam faire son taf et une fois que c’est fait, vous déroulez. »
Windows n’est pas épargné non plus
Les saccades et temps de compilation ne sont pas propres à Linux. Sur Windows, changer de pilote graphique ou mettre à jour DirectX force aussi une recompilation du cache. La différence, c’est que Linux ajoute la couche Proton/DXVK/VKD3D, ce qui rend l’impact plus visible.
CONCEPTS CLÉS
- Shader : petit programme exécuté par le GPU pour gérer les effets visuels (lumière, ombre, reflet, etc.).
- Compilation de shaders : processus de traduction du code source du shader en instructions compréhensibles par votre carte graphique et votre pilote.
- Cache de shaders : stockage local des shaders déjà compilés, permettant de les réutiliser sans recompilation.
- Proton / DXVK / VKD3D : couches de traduction qui permettent d’exécuter des jeux Windows (DirectX) sur Linux en convertissant les shaders vers Vulkan.
CONCLUSION
Les shaders sont indispensables au rendu visuel des jeux modernes, mais leur compilation est une étape obligatoire et parfois longue, surtout sur Linux à cause de la couche de traduction Proton. Pour minimiser l’attente et les saccades, activez le préchargement des shaders dans Steam et privilégiez une distribution stable si votre matériel est limité. Comme le résume l’intervenant : « les shaders dans tous les cas vous ne pouvez pas vous en passer pour jouer aux jeux vidéo sur les jeux modernes. C’est obligatoire. »