Impossible to load any shader

Hi, i have just configured 2 playlist on my retroarch installation on Xbox Series X, the NES and SUPER NES playlist. I have done everything correctly, followind all the steps pf a really good guide. Everything works fine, but it is impossible to load any shaders on every emulators of both playlist… Following the guide:

  1. run a game --> quick start menu --> Shaders --> Video shaders = ON --> Load preset --> choose any of the .slangs shaders available. I tried several shaders, usually the most common crt shaders, i know that they are supported but any of them isn’t loaded. I’m using the latest Retroarch version available and with all the shaders updated.

Do you have any idea how to solve this issue? Shaders are really good and without them i’m not so interested to use Retroarch :frowning: thank you

I’ve never used RetroArch on a console, so I don’t know how helpful I can be, but there are always a couple things to check:

  1. Did you install/update all the shaders from the Online Updater?
  2. Are you trying to load shader presets or individual shaders?
    • If you’re trying to load a preset, make sure you’re looking for slangp files, not slang
    • If you’re looking to use individual shaders rather than presets, you’ll need to instead scroll down to “Shader Passes”, increase that, and select the individual shaders you’re attempting to assign.
  3. Do any errors pop up? Does RetroArch crash? What is the actual behavior when the shader fails to load?
1 Like

Im not used retroarch in any console so I dont know if this info is useful, im only guessing.

Slang shaders are compatible with opengl 3.2 or superior and vulkan, and since the first xbox name derives from “directx box” my assumption is that al microsoft consoles uses DirectX API making slang shaders incompatible(?).

If you’re using one of the official builds, slang shaders (which are compatible with d3d10/11/12) were broken in the last version or two. There’s an unofficial build that got them working again, though, which you can get from here: https://github.com/XboxEmulationHub/RetroArch/releases

hi,

  1. yes, i downloaded all the new shaders
  • I only have .slangp files into the Preset section, so i’m trying to load preset of these type of shaders --> “Failed to apply shader preset: ShaderName.slangp” (shadername = I mean the pop up error is referred to the shader i’m trying to load)
  • if i try to load individual shaders, i can choose slang files, but in any case it still fails to load all the shaders i tried --> “Failed to apply shader preset: retroarch.slangp”
  1. see above

thanks. Well, i’m absolutely sure Retroarch perfectly works on Xbox seriex X. I set DirectX11, it is its default and i followed the guides and it always seems that this default setting is perfect

I’m using the latest one available, 1.19.1 downloaded from here: https://buildbot.libretro.com/stable/1.19.1/windows-msvc2019-uwp/x64/

The version available here: https://github.com/XboxEmulationHub/RetroArch/releases is the 1.19.0. Do you think it is better to uninstall the 1.19.1 and try the 1.19.0? Into the link above there is a allpackages cores file: do you know if it is better/mandatory to install it too? Last question: as i set the 12 Retroarch folders into my external USB key --> https://i.postimg.cc/bY2QbhPH/retroarch.jpg, f i unistall Retroarch, is it better to delete all the contens in these 12 folder?

thanks!

their repo says they’re just a few commits behind upstream RetroArch, so it probably just hasn’t had the version number bumped. I would indeed uninstall the 1.19.1 and try the one from the link.

The one with all of the cores just has all of the cores bundled in. AFAIK, the version from the link should work with normal cores from the online updater (especially Mupen64plus-next), so I don’t think it’s a huge deal either way.

If you don’t have a lot invested in the other installation, yes, I would wipe it out completely and start from a clean slate.

1 Like

thanks, i made a fresh installation, the Retroarch provided into the link above is the 1.20.0, not the 1.19.0, so it is newer than my previous 1.19.1! I hope this new updated version will work with shaders.

Well, using the online updater i have updated the following: Update Assets, Update Core Info Files, Update Controller Profiles, Update Cheats, Update Databases, Update Overlays, and Update Slang Shaders. I haven’t used the core pack provided with the link above. I will let you know it shaders work in this new version

Thanks

Hi, check Settings, Directory, Video Shaders and check the path is correct.

If not, correct the path from there, or you can open the retroarch.cfg file and change it there.

I noticed a lot of paths on my Flatpak version have defaulted to /app/share/libretro etc. to fix this I changed them to ~/.var/app/org.libretro.RetroArch/config/retroarch/ (and then the specific folder)

yes, the path is correct and now with 1.20.0 version shaders work again! :slight_smile: I read that 1.19.1 version was bugged, it didn’t support anymore shaders.

I have 2 questions:

  1. i have 2 NES emulator, nestopia and mesen. Running Nestopia, i ran a game --> Quick menu --> controls --> Port 1 Controls -->i set a new control mapping --> Manage Remap file --> Save Content directory Remap file. In this way, i should be able to have controls always correct when i use every emulator with games included into the directory involved (nes games). But if i run nestopia it works, Retroarch loads the Content Directory remap file, but if i run a game using Mesen, Retroatch doesn’t do that, it load the default mapping configuration…why? I don’t understand why Retroarch doesn’t load the Remap file when i run Mesen…

  2. When i run a game using a core, if i want to apply a Shader, the right procedure is: Quick menu --> Shaders --> Video shaders = ON --> Load preset --> choose any of the .slangs shaders available --> Apply changes --> Save Preset --> Save Content Directory preset --> in this way, i should be able to set my preferred shader automatically to ALL the cores for Nintendo NES, am I right?

Thanks

For remaps, the content directory stuff is in addition to the core. it adds additional granularity to the normal per-core-ness. The inputs are necessarily core-specific, even if they’re the same “system” (that is, RetroArch doesn’t have any knowledge of systems/consoles, just cores)

For shaders, it should apply regardless of core, yes, since the shaders are a universal system. Whoops, my mistake: it’s also core-specific, just like remaps.

  1. Remap files: understood! For example it can be used for cores that are used for multimple system, for example a core able to run Genesis and MAster system games (each system with its own game folder, of course). So, if i create a contend directory remap file for Master system directory games and genesis directory game, when i use that core, it will apply the Genesis mapping if i run a genesis game and the same if i run a Master system game. Is that correct?

  2. Shaders: i see i have mutiple option. Save Global preset, save core preset, save contend directory preset, save game preset. I think that it is not possible to save Shaders for a System (for example NES): if i want to apply my favourite shader for every NES emulator, i have to run a game with every core, choose the shader and then Save Core Preset. Am I right?

thanks

  1. Correct. As long as both systems have separate and unique folders.
  2. Right again. Shaders are saved either globally or per core, but not by system. Usually, it’s not an issue, as it’s expected that the user will stick with his favorite core. If you want any other way, you’ll have to save a preset for that new core once.
1 Like

perfect many thanks for all your help!

Well, i have another question please. Is it possible to automatically download some overlay for example for the system or for game i’m running? I mean: if i run a NES game, i have black bar to left/right. Is it possible to load some background with NES logo for example? Or is it possible to load background of the game i’m running, like this:

I think that retroarch can do it but i don’t know how…

thanks

It’s possible, but I don’t know any automated method using RetroArch alone. What you normally do is to load the desired bezel for your game and save an override for the core or game. That settles it, but each new game or core may need the process to be repeated once.

For further information, here’s the official documentation: https://docs.libretro.com/guides/libretro-overlays/

thank you, done! i have undestood. Now i will try to look for specific game bezels :slight_smile: I found them here:

But is it possible to download them simultaneously? i’m only able to downlad every single file…and i’m not able to see all the files…the files are truncated to “mighty final fight”…

Last question: if i choose a game specific overlay for every game (or for every game with its own overlay available), i have to choose Game Override. In this way, i save the overlay for every game. But i also choose a shader for a core (mesen, for example): if i change the shader for that core, it will automatically change for every game, am i right? Or does it change only for games without a game override (for example for game where i’m not able to find a game specific override so i use a System overlay, by default)? I would like to be able to change the shaders for every game of that core, even if i save “game override” in order to save the overlay for every game… Is it possible?

thanks

Well, you can download the entire git repository and cherry-pick what you want: https://github.com/thebezelproject/bezelproject-NES/archive/refs/heads/master.zip

If (and only if) everything is set up properly and RetroArch shows no regression (it happens), then your overrides won’t mess with your shader choices. They’re separate and work independently, you wouldn’t need to have any extra effort because of that.