Ana içeriğe geç

KNULLI Shaders

Difference between KNULLI (Batocera) and RetroArch

This method differs from how to add RetroArch shaders but is more in line with the KNULLI/Batocera mindset.

Knulli allows custom shaders to be made available directly in EmulationStation.

Therefor they can be applied:

  • Per game: Press and hold the launch button (A or B depending on your setup) on the game you want the shader to be appplied to, then go to Advanced Game Options, then Game Rendering & Shaders, then Shader Set and select the shader you want.

  • For an entire system: Press the Start button to open the main menu then go to Game Settings, then Per System Advanced Configuration. Select the system you want to apply the shader to, then go to Game Rendering & Shaders, then Shader Set and select the shader you want.

This is just an example

We will use one of the Shimmerless shaders as an example here, but the method should be applicable to any compatible shader.

Folders preparation

Connect to your handheld and create a shaders folder in /userdata (if it does not exist yet). Populate it as described below.

/shaders
 └─ sharp-shimmerless.glslp
 └─ configs/
    └─ sharp-shimmerless/
        └─ rendering-defaults.yml
 └─ shaders/
    └─ sharp-shimmerless.glsl
  • The *.glsp and *.glsl files used in this example can be extracted from the Shimmerless GitHub repository.
  • rendering-defaults.yml need to be manually created.

Editing rendering-defaults.yml

After creating a new empty text file called rendering-defaults.yml, you can edit it with a text editor of your choice. (For Windows users, we strongly recommend Notepad++.)

default:
  shader: sharp-shimmerless

Make sure that sharp-shimmerless.glslp points to the correct subfolder and glsl file (should be the case in our example).

shaders = 1

shader0 = shaders/sharp-shimmerless.glsl
filter_linear0 = true

Press the Start button to open the main menu, go to Game Settings and select Update Gamelists to make the shader available on your handheld.

Enjoy!

Advance setup

More details are available here: Batocera wiki