Shaders CRT sur votre borne d’arcade : comment donner à l’écran l’aspect d’une borne de salle

Super Mario World coupé en deux : à gauche sans shader et à droite avec les lignes de balayage d'un shader CRT

Un écran plat affiche les pixels d’un jeu des années 80 ou 90 tels quels : carrés, nets et aux bords durs. Sur le tube d’une salle d’arcade, on les voyait autrement, avec des lignes de balayage, des couleurs un peu fondues et une vitre bombée. Un shader CRT est un filtre qui imite cet écran, et dans Batocera et RetroBat, il s’active depuis le menu.

Dans ce guide, nous vous expliquons ce qu’est un shader, quels jeux de shaders proposent Batocera et RetroBat, lesquels tournent sur un Raspberry Pi et lesquels demandent un PC, et quels autres réglages il vaut la peine de modifier. Les informations proviennent de la documentation de chaque projet, consultée le 3 novembre 2026.

La même image d'un jeu Mega Drive sans shader, avec le jeu de shaders Scanlines et avec le jeu de shaders Enhanced de Batocera
De gauche à droite : sans shader, avec le jeu de shaders Scanlines et avec Enhanced, sur un jeu Mega Drive. Image : wiki de Batocera.

Qu’est-ce qu’un shader ?

Un shader est un petit programme qui retouche l’image du jeu avant de l’envoyer à l’écran. La documentation de libretro les décrit comme des filtres graphiques qui peuvent améliorer l’image des jeux anciens ou reproduire l’aspect d’un moniteur CRT. On peut en enchaîner plusieurs, et cette combinaison s’enregistre sous forme de preset (fichiers .slangp ou .glslp). RetroArch en propose énormément.

Il y a une limite à connaître dès le départ : ces shaders ne fonctionnent qu’avec les cœurs de RetroArch et quelques émulateurs indépendants. Le wiki de Batocera prévient que la plupart des émulateurs indépendants, comme Dolphin, Cemu ou RPCS3, ne les utilisent pas, et que cela ne va pas changer. Pour l’émulation arcade, ce n’est généralement pas un problème, car FBNeo et MAME ont un cœur RetroArch.

Les jeux de shaders de Batocera

Batocera regroupe les shaders en jeux que l’on choisit dans les paramètres de jeu, à l’option du jeu de shaders (SHADER SET si votre interface est en anglais). On peut en mettre un pour tout, ou un différent pour chaque système ou chaque jeu. Voici ceux qu’il propose :

  • Scanlines : selon le wiki, le plus réaliste pour retrouver l’aspect des années 80 et 90. Il ajoute des lignes de balayage, sans courbure. Sur PC, il utilise le shader crt-easymode ; sur Raspberry Pi, crt-pi.
  • Curvature : des lignes de balayage et l’écran bombé des téléviseurs à tube. Sur PC, il utilise crt-lottes-fast ; sur Raspberry Pi, fakelottes.
  • Zfast : une version de l’algorithme zfast, avec des lignes de balayage plus douces. Le wiki le présente comme plus léger que les autres.
  • Flatten-glow : il fait briller les lumières. Le wiki indique qu’il rend très bien sur la Vectrex et sur les anciennes bornes d’arcade à fond noir, et que sur les jeux très colorés, il peut donner le tournis.
  • Enhanced et sharp-bilinear-simple : ils n’imitent pas un CRT. Le premier adoucit l’image et le second est un filtre bilinéaire plus net.
  • Mega-Bezel et Koko-AIO : des paquets optionnels que l’on télécharge depuis l’outil de téléchargement de contenu de Batocera. Ils placent l’image à l’intérieur d’un vieux téléviseur, avec cadre et reflets. Tous deux exigent l’API graphique GLCore ou Vulkan et le format d’image sur « Full ».

Le fait que chaque jeu de shaders utilise un shader différent sur PC et sur Raspberry Pi, ce n’est pas vous qui le choisissez : Batocera installe la version légère sur tous les Raspberry Pi, du Pi 0 au Pi 5, selon la configuration de son dépôt.

Détail de Super Mario World sans shader, avec le jeu de shaders Scanlines et avec le jeu de shaders Zfast de Batocera
Le même détail sans shader, avec Scanlines et avec Zfast, de gauche à droite. Image : wiki de Batocera.

Si vous voulez un autre shader de RetroArch

Réglez le jeu de shaders sur « None » et choisissez le shader depuis le menu rapide de RetroArch, dans la section des shaders. Le wiki de Batocera explique qu’avec le jeu de shaders sur « None », Batocera ne touche pas à ce que vous y enregistrez. Depuis ce menu, on peut enregistrer le preset pour un jeu, pour un cœur ou pour tout.

Dans RetroBat

RetroBat fonctionne de la même façon : le jeu de shaders se choisit dans GAME SETTINGS (Shader set), et aussi par système ou par jeu dans ses options avancées. Il a sa propre liste, et son wiki explique comment ajouter n’importe quel autre shader de RetroArch, en créant un dossier dans systemshadersconfigs avec un fichier rendering-defaults.yml. Le paquet Mega Bezel est également disponible et s’active depuis la même option. Pour certains émulateurs indépendants, RetroBat utilise ReShade pour appliquer shaders et cadres.

Si vous débutez avec RetroBat, vous trouverez tout dans notre guide de RetroBat.

Raspberry Pi ou PC ?

Les shaders sollicitent la carte graphique, et le wiki de Batocera les cite parmi ce qui ralentit les jeux sur les machines un peu justes. Voici ce qu’en disent leurs auteurs :

  • crt-pi a été conçu pour la puce graphique du Raspberry Pi, pour tourner en 1080p à 60 images par seconde avec des jeux en 4:3. Son auteur prévient que la courbure le ralentit beaucoup et que le Pi est un peu juste, et il recommande donc de pousser sa vitesse au maximum depuis raspi-config.
  • zfast, selon son auteur, tourne à 60 images par seconde sur un Raspberry Pi 3 en 1920×1080.
  • Mega-Bezel est très gourmand : le wiki de Batocera le réserve aux PC de bureau puissants. Koko-AIO demande beaucoup moins : selon le même wiki, il tourne à pleine vitesse même avec un processeur Intel N100, celui de nombreux mini PC.

Si vous comptez installer un mini PC dans votre borne, Quel PC pour émuler ? vous indique ce que demande chaque système. Et si votre borne est équipée d’une carte Pandora, tout ceci ne s’applique pas : c’est un système fermé, avec ses jeux et son menu, qui ne charge pas de shaders de RetroArch. Les différences entre les trois options sont expliquées dans Quel système choisir pour sa borne arcade ?.

Super Mario World à l'intérieur d'un vieux téléviseur avec cadre et reflets, avec le jeu de shaders Koko-AIO de Batocera
Le jeu de shaders Koko-AIO, avec le cadre du téléviseur et les reflets. Image : wiki de Batocera.

Trois réglages qui vont avec le shader

  • Format d’image. La plupart des téléviseurs et moniteurs des années 80 et 90 étaient en 4:3. Sur un écran 16:9, il reste deux bandes sur les côtés, que Batocera et RetroBat peuvent remplir avec des décorations (bezels). RetroBat en propose même quelques-unes pour les bornes verticales.
  • Mise à l’échelle entière (pixel perfect). Elle agrandit l’image uniquement par multiples entiers, pour que les pixels ne se déforment pas. En contrepartie, elle peut laisser une bordure noire autour du jeu. Elle se trouve dans les paramètres de jeu de Batocera et de RetroBat.
  • Lissage (smooth games). Inutile de le désactiver à la main : Batocera le coupe tout seul quand vous utilisez un jeu de shaders.
Infographie indiquant le shader CRT à utiliser dans une borne d'arcade selon qu'elle est équipée d'un Raspberry Pi, d'un mini PC ou d'un PC puissant
Quel shader utiliser selon le matériel de votre borne.

Sur votre bartop

Sur un meuble avec écran plat, un shader rapproche beaucoup l’image de celle d’une borne de salle d’arcade. Si vous n’avez pas encore la borne, le megapack du King avec interfaces USB comprend les commandes avec interfaces USB pour les brancher à votre Raspberry Pi ou à votre PC, et le kit du King avec socle incurvé et porte est le meuble de la photo ci-dessous, avec nos vinyles Pang.

Bartop King avec socle d'un client, avec les vinyles Pang et le jeu à l'écran
Le King d’un client, avec nos vinyles Pang et le jeu à l’écran.

Questions fréquentes

Quel shader choisir pour commencer ?

Le jeu de shaders Scanlines. Batocera utilise déjà la version adaptée à votre matériel, et si vous le trouvez trop prononcé, essayez Zfast.

Est-ce que ça fonctionne sur un Raspberry Pi ?

Oui. Scanlines et Curvature passent d’eux-mêmes à des shaders légers, et Zfast l’est déjà. Mega-Bezel, non.

Est-ce que ça marche avec tous les émulateurs ?

Non. Seulement avec les cœurs de RetroArch et quelques émulateurs indépendants.

Est-ce que cela affecte les performances ?

Oui. Si un jeu rame, choisissez un jeu de shaders plus léger ou désactivez-le.

Sources

Consultées en novembre 2026 :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *