Recalbox Forum

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • recalbox.com
    • Gitlab repository
    • Documentation
    • Discord

    [Tuto] mettre par defaut le shader crt-nes-mini.glspl (ou un autre)

    Recalbox Général
    [tuto] defaut shader
    14
    47
    6212
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • airdream
      airdream Theme moderator last edited by acris

      Bonjour,

      Souhaitant réduire les effets de pixelisation des modes de base de recalbox, je me suis intéressé aux surcharges et j'ai enfin trouvé un rendu vidéo qui me convient mieux. Sans gros pixel, sans deformation, avec de tres petites lignes de balayage.
      Ayant particulièrement apprécié le rendu CRT de la mini SNES, je suis parti en quête de trouver un similaire sur recalbox. Je me suis rendu compte que retroarch proposait le shader crt-nes-mini et je l'ai donc installé par défaut pour de nombreuses consoles (pas toutes, les portables comme la gameboy par exemple ca ne va pas).
      Je vais donc vous expliquer ici en 5 étapes la manip et les liens des fichiers à télécharger.

      Téléchargement

      1. Télécharger le shader ici (il doit y avoir 2 fichiers, l'un en .glsl et un autre en .glslp, vous pouvez télécharger le dossier qui les contient que j'ai appelé "shaderpresets" (gardez ce nom)
        --->>>> shader crt-nes-mini

      2. télécharger le fichier .recalbox.conf fait par mes soins ici (replacer le . en premier caractère si il a été effacé par windows, il faut qu'il soit absolument nommé ainsi .recalbox.conf
        --->>>> .recalbox.conf

      Placer ensuite dans les bons dossiers

      1. Dans le dossier : /recalbox/system mettre le dossier "shaderpresets" contenant les 2 fichiers

      2. Dans le dossier /recalbox/roms mettre le fichier .recalbox.conf
        (je répète, quand on le télécharge il supprime point . du début, renommer le bien en .recalbox.conf avec le point . au début

      3. (très important ! )bien mettre l'option Pixel perfect de recalbox sur ON (sinon les lignes de balayages seront mal placées)

      C'est tout vous pouvez profiter du shader pour ces machines là
      N’hésitez pas à en rajouter d'autres si il vous plait.

      snes.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      megadrive.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      nes.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      mastersystem.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glsl
      atari7800.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      colecovision.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      fds.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      gx4000.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      msx.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      neogeo.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      neogeocd.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      pcenginecd.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      pcengine.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      psx.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      satellaview.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      sega32x.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      sg1000.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      segacd.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      supergrafx.shaders= /recalbox/share/system/shaderpresets/crt-nes-mini.glslp
      

      Quelques images mais ca rend pas aussi bien qu'en vrai, le résultat obtenu sur ma TV LCD est vraiment propre, sans bouillie de pixels
      MEGA CD (picodrive)
      IMG_20200522_200010.jpg

      Megadrive (genesisplusgx)
      IMG_20200522_194817.jpg

      colecovison
      IMG_20200522_194546.jpg

      SNES (snes9x)
      IMG_20200522_193826.jpg

      NeoGeo (FBN)
      IMG_20200522_193535.jpg

      Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

      pepito 1 Reply Last reply Reply Quote 5
      • pepito
        pepito @airdream last edited by

        @airdream merci ca a l'air propre en effet...

        1 Reply Last reply Reply Quote 0
        • Wang85
          Wang85 last edited by

          @airdream said in [Tuto] mettre par defaut le shader crt-nes-mini.glspl (ou un autre):

          Dans le dossier : /recalbox/system mettre le dossier "shaderpresets" contenant les 2 fichiers

          Bonjour, j'ai utilisé cette méthode et la mise en place du shader n'est pas automatique pour les différents systèmes, je suis obligé de l'activer manuellement pour chaque jeu.
          Mes roms sont situées sur un disque dur externe où se trouve aussi le fichier système (dossier share). Je suis sur Pi3.

          Ai-je loupé un truc ?
          Par ailleurs le shader est très agréable visuellement, bravo.

          airdream 1 Reply Last reply Reply Quote 0
          • airdream
            airdream Theme moderator @Wang85 last edited by airdream

            @Wang85
            Je l'ai activé en effet que pour les systèmes que j'ai cité dans le premier post, mais en théorie tu ne devrais pas avoir à les activer manuellement... Bizarre car moi mes roms sont sur clé USB ce qui revient au même. (La la différence que mon OS est sur la carte SD, peut être ça?)
            Le fichier .glslp contient le chemin où se trouve le shader (Dans shaderprests donc qui doit être dans system de ton disque dur).
            Tu as bien renommé . recalbox.conf? Je me demande bien pu ça a pu foiré ?!?! Une histoire de chemin à revoir sûrement.

            Est ce que tu peux remplacer share par share_init dans le chemin du fichier.glslp
            Il faut le faire avec notepad++
            Je peux te renvoyer le fichier corrigé si tu sais pas faire.

            Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

            1 Reply Last reply Reply Quote 0
            • airdream
              airdream Theme moderator last edited by airdream

              @airdream said in [Tuto] mettre par defaut le shader crt-nes-mini.glspl (ou un autre):

              tiens je t'ai corrigé le chemin dans les fichiers précédemment téléchargés qu'il faut que tu remplaces dans ton cas.

              crt-nes-mini version share_init

              @Wang85
              Si cela ne marche toujours pas le mieux est que tu m'envoi la photo du chemin ou se trouve le shader quand tu pointe dessus avec recalbox via retroarch (le chemin est inscrit au dessus au sommet de l’écran)

              Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

              1 Reply Last reply Reply Quote 0
              • Wang85
                Wang85 last edited by

                Bingo, j'ai réussi à le faire fonctionner, j'ai du louper un truc la première fois^^.
                J'ai refais la manip de 1 à 5 et cela fonctionne maintenant.

                Merci, j'en ai profité pour rajouté l'Amstrad CPC 😄

                1 Reply Last reply Reply Quote 0
                • airdream
                  airdream Theme moderator last edited by

                  merci @Wang85 pour ton retour 👍

                  Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

                  1 Reply Last reply Reply Quote 0
                  • Eptdqcn41700
                    Eptdqcn41700 last edited by

                    @airdream ,
                    Merci pour ce travail partagé 👍
                    Juste une petite question : le shader que j’utilise est le crt-pi.
                    Sur le shader nes mini,il y’a l’effet incurvé ?
                    Si non, on ne peut pas " fusionner" 2 shader ?
                    Merci encore

                    Rpi 3b+/Recalbox BêtaChristmas\Interface USB Xin-Mo/Bartop
                    SuperPi Case/Recalbox 7.0/8bitdo SN30PRO /Rpi 3b+

                    airdream 1 Reply Last reply Reply Quote 0
                    • airdream
                      airdream Theme moderator @Eptdqcn41700 last edited by airdream

                      @Eptdqcn41700

                      Fusionner ces 2 shaders là ca ne me semble pas possible vu qu'ils ont pas mal de points différents.
                      Au mieux je pense possible de pouvoir intégrer l'effet courbé en reprenant le code du fichier crt-pi.glsl et de mettre cette partie là dans le code de crt-nes-mini.glsl

                      En fouillant le code du crt-pi.glsl voici les éléments que je trouve qui définissent cet effet courbé.
                      Faut essayer de mettre l'ensemble ou les bonnes valeurs seulement dans le fichier crt-nes-mini.glsl avec notepad++
                      (Faut y aller par tâtonnement sûrement)
                      Peut-être quelqu'un qui a plus l'habitude pourrait apporter une réponse plus efficace que la mienne...

                      #pragma parameter CURVATURE_X "Screen curvature - horizontal" 0.10 0.0 1.0 0.01
                      #pragma parameter CURVATURE_Y "Screen curvature - vertical" 0.15 0.0 1.0 0.01
                      
                      //#define CURVATURE
                      
                      #ifdef PARAMETER_UNIFORM
                      uniform COMPAT_PRECISION float CURVATURE_X;
                      uniform COMPAT_PRECISION float CURVATURE_Y;
                      uniform COMPAT_PRECISION float 
                      
                      uniform vec2 TextureSize;
                      #if defined(CURVATURE)
                      varying vec2 screenScale;
                      #endif
                      
                      #if defined(CURVATURE)
                      	screenScale = TextureSize / InputSize;
                      #endif
                      	filterWidth = (InputSize.y / OutputSize.y) / 3.0;
                      	TEX0 = TexCoord;
                      	gl_Position = MVPMatrix * VertexCoord;
                      }
                      
                      #if defined(CURVATURE)
                      vec2 Distort(vec2 coord)
                      {
                      	vec2 CURVATURE_DISTORTION = vec2(CURVATURE_X, CURVATURE_Y);
                      	// Barrel distortion shrinks the display area a bit, this will allow us to counteract that.
                      	vec2 barrelScale = 1.0 - (0.23 * CURVATURE_DISTORTION);
                      	coord *= screenScale;
                      	coord -= vec2(0.5);
                      	float rsq = coord.x * coord.x + coord.y * coord.y;
                      	coord += coord * (CURVATURE_DISTORTION * rsq);
                      	coord *= barrelScale;
                      	if (abs(coord.x) >= 0.5 || abs(coord.y) >= 0.5)
                      		coord = vec2(-1.0);		// If out of bounds, return an invalid value.
                      	else
                      	{
                      		coord += vec2(0.5);
                      		coord /= screenScale;
                      	}
                      
                      	return coord;
                      }
                      #endif
                      
                      #if defined(CURVATURE)
                      	vec2 texcoord = Distort(TEX0);
                      	if (texcoord.x < 0.0)
                      		gl_FragColor = vec4(0.0);
                      	else
                      #else
                      	vec2 texcoord = TEX0;
                      #endif
                      	
                      

                      Avant d'essayer de modifier le code de crt-nes-mini.glsl autant d'abord le testé et voir si le rendu te plaît.
                      Personnellement j'ai pas été fan des autres shaders Tel que zfast, caligari, etc... Mais le crt-pi je l'ai toujours trouvé réussi (sans l'effet courbé que je n'aime pas, et que je remettais toujours a plat). Les 2 sont donc assez proche, bien que crt-nes-mini a ma préférence, voilà pourquoi j'ai voulu l'adapter a recalbox.

                      Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

                      Eptdqcn41700 1 Reply Last reply Reply Quote 0
                      • Eptdqcn41700
                        Eptdqcn41700 @airdream last edited by

                        @airdream
                        Merci pour cette réponse complète.
                        L’effet courbe est intéressant pour moi sur quelques systèmes vu que mon bartop a un lcd 19" , donc avec les overlays je trouve que ça donne pas mal.
                        Je tenterai avec notepad ++ ( j’aime essayer les sujets que je ne maîtrise pas 😂) et si ça marche, je ferai un retour.

                        Rpi 3b+/Recalbox BêtaChristmas\Interface USB Xin-Mo/Bartop
                        SuperPi Case/Recalbox 7.0/8bitdo SN30PRO /Rpi 3b+

                        airdream 1 Reply Last reply Reply Quote 0
                        • airdream
                          airdream Theme moderator @Eptdqcn41700 last edited by airdream

                          @Eptdqcn41700
                          Je viens d'essayer de balancer tel quel les données de crt-pi concernant l'effet courbé dans le crt-nes-mini ça n'a rien donné...
                          C'est plus subtil que ça faut bien décortiquer le code crt-pi c'est pas si simple que ca (enfin pour moi le gros débutant)

                          Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

                          1 Reply Last reply Reply Quote 0
                          • falconx62
                            falconx62 last edited by

                            Un grand merci pour nous avoir fait partager ce shader. Moi aussi je n'avais jamais été vraiment satisfait par les shaders disponibles, à part crt pi. Là, c'est vraiment la grande classe! Je suis même bluffé ! Le résultat est vraiment proche de mes consoles branchées sur un vrai crt.
                            Quand j'ai testé Devil Crash PC engine avec ce shader, j'ai halluciné. Le résultat est quasiment identique à ce qu'affiche la vraie console sur un cathodique en rgb. Du grand art.
                            Plus qu'à espérer que ce shader SNES Mini soit intégré à Recalbox pour qu'il soit accessible au plus grand nombre.
                            Un énorme merci de ma part 😁

                            airdream 1 Reply Last reply Reply Quote 0
                            • airdream
                              airdream Theme moderator @falconx62 last edited by airdream

                              @falconx62
                              merci pour ton commentaire ca fait plaisir a lire ! !
                              Oui moi aussi je trouve le rendu très proche d'une vraie console sur un écran cathodique ! ! (et bye bye les gros pixel des mode video de base de recalbox)
                              J’espère que quelqu'un de la team sera d'accord pour le mettre a la place du mode "retro" actuel car en plus il ne consomme pas plus de ressources.

                              Je l'ai pas activé pour toutes le consoles, si il te plait n'hesites pas à le faire !

                              Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

                              1 Reply Last reply Reply Quote 0
                              • falconx62
                                falconx62 last edited by

                                Déjà fait sur Mame, Fba et la 2600!
                                Une pure tuerie !!!😍

                                Wang85 1 Reply Last reply Reply Quote 0
                                • Wang85
                                  Wang85 @falconx62 last edited by

                                  @falconx62 Je confirme 👍
                                  Il n'y a que sur l'émulateur Thomson que je n'ai pas réussi à l'activer même en voulant le forcer par le menu retroarch, peut-être que l'émulateur Théodore est en stand alone ?

                                  1 Reply Last reply Reply Quote 0
                                  • airdream
                                    airdream Theme moderator last edited by airdream

                                    J'ai eu un souci avec le ficher .recalbox.conf sur le site de l’hébergeur (MEGA).
                                    J'ai du refaire le lien de partage qui est celui-ci a présent :
                                    --->>>> .recalbox.conf

                                    @acris ou une autre personne en charge de la modération, pouvez vous me corriger le lien du premier post? Malheureusement je ne peut pas le faire moi même

                                    Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

                                    1 Reply Last reply Reply Quote 0
                                    • acris
                                      acris last edited by

                                      @airdream fait.

                                      1 Reply Last reply Reply Quote 1
                                      • airdream
                                        airdream Theme moderator last edited by airdream

                                        Merci @acris t'es geniale

                                        j en profite pour mettre ici quelques exemples de rendu en plein format (faut cliquer dessus pour les mettres a la bonne taille et bien voir les scanlines)

                                        FBA Libretro
                                        asterix-200529-021030.png

                                        NeoGeo FBN
                                        roboarmy-200529-021531.png

                                        Megadrive
                                        Street Fighter II' - Hyper Champion Edition(USA)-200529-023806.png

                                        SNES
                                        Chou Makai Mura (Japan)-200529-023035.png

                                        PCE CD
                                        Fantastic Night Dreams - Cotton (USA)-200529-022505.png

                                        MCD
                                        Sonic The Hedgehog CD (Japan)-200529-030647.png

                                        32x
                                        Mortal Kombat II (Japan, USA)-200529-024222.png

                                        PS1
                                        R4 - Ridge Racer Type 4 (USA)-200529-022716.png

                                        NES
                                        Adventures of Bayou Billy, The (USA)-200529-021950.png

                                        MASTER SYSTEM
                                        Land of Illusion Starring Mickey Mouse (Europe)-200529-024024.png

                                        Thème MUKASHI / RPI 4 (4GB) / 3B+ et 3B / Recalbox dernière version

                                        roudoudou80 1 Reply Last reply Reply Quote 0
                                        • guicln
                                          guicln last edited by guicln

                                          Hello et merci @airdream pour ce tuto clair 😉

                                          Lorsqu'on souhaite appliquer le shader en général sur tous les systèmes, le plus simple est de définir "global.shaders" directement dans le fichier : /recalbox/share/system/recalbox.conf

                                          ## Set gpslp shader for all emulators (prefer shadersets above). Absolute path (string)
                                          global.shaders=/recalbox/share/system/shaderpresets/crt-nes-mini.glslp
                                          

                                          Et si besoin, ajouter spécifiquement par système un shader différent :

                                          fba_libretro.shaders=/recalbox/share/system/shaders/zfast_crt_curve_vertical.glslp
                                          

                                          Pour ma part je reste sur la série des shaders "zfast" dont je suis particulièrement fan, ils sont plus optimisés que les "crt-pi" et tournent parfaitement sur tous les émulateurs en 1080p (hors systèmes 3D) :

                                          Disponibles parmi les autres ici :
                                          https://github.com/ghogan42/common-shaders/tree/zfast_shaders

                                          Le Raspberry Pi 3 reste limité en puissance et impossible d'accéder à certaines beautés comme "crt-royale-kurozumi"...!

                                          Mes aperçus sur Arcade,

                                          zfast_crt_standard :

                                          zfast_crt_standard.png

                                          zfast_crt_curve :

                                          zfast_crt_curve.png

                                          zfast_curve_vertical :

                                          zfast_crt_curve_vertical.png

                                          1 Reply Last reply Reply Quote 0
                                          • roudoudou80
                                            roudoudou80 @airdream last edited by

                                            @airdream Sympa, il faut que je teste ! C'est quel jeu sur PCE CD ? Merci d'avance.

                                            Pi3B+ Recalbox Reloaded
                                            Manette Switch Filaire
                                            Ecran PC 5/4
                                            Kodi désactivé

                                            airdream 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Want to support us ?

                                            78
                                            Online

                                            98.6k
                                            Users

                                            28.1k
                                            Topics

                                            187.0k
                                            Posts

                                            Copyright © 2021 recalbox.com