ArtB Shaders

Hi community,

for more than 20 years now I’m addicted to retro gaming. It all started with the famous C64S bei Miha Peternel in the late 90s (with a special parallel cable to directly connect my old 1541 to the PC). The next one was bleem!, and then I fell in love with UltraHLE. Finally I ended up with RetroArch and was intrigued by the endless possibilities.

But I don’t want to tell a long story. What I want to say: I always participated of other’s work and commitments. The “others” developed emulators, launchers, overlay, shaders and so on. And I was the one to use them, happily and more and more often, without giving anything in exchange (except for some bucks for some patreon projects).

Now I think that this is the right moment to give something back to the community. I started coding shaders last year, without having any professional coding skills. My job doesn’t give me much time to learn how to code. But I started to do it anyway, just to see how far I would come. The initial impulses to do so came from @Syh and @HyperspaceMadness. I think they don’t know anymore in which way they did help me last year, but I wanted to thank both of you :heart:! I really enjoyed diving into shader programming and had hundreds of entertaining and challenging hours. Guys, you made 2020 a great year for me :partying_face:

So this is it: I’m currently setting up a github account with a shader project. Nearly all of my shaders are ReShade .fx shaders, as I had big problems to understand the concept of RetroArch slang shaders. But I hope to be able to port them to RetroArch one day - maybe with the help of this great community?

As I stated before, I only started coding shaders last summer, so please don’t hang your expectations higher than “floor level”. It’s all still very new to me, but I think it’s time to publish something. So now I will start and see what’s gonna happen.

Any feedback is welcome. I hope that at least a tiny bit of my coding (and also my graphical work) will be useful for someone. This would be great.

Here’s my github account where you will be able to download my latest (upcoming) releases:

Currently, my first shader “ArtB_Outline” ist publicly available.

If you are interested, you can find some additional screenshots (espcially of my all-in-one shader) on RetroArch Discord Server, #showcase and #shaders-and-overlay, which I posted April, 1st (my alter ego is “ArturoBandini”).

The ArtB_Outline shader is 100% of my own work, but most of my other shaders use functions or concepts of other shaders (for example from last years guest.r reshade port) or from “official” RetroArch shaders, which I modified, stripped down or embedded in “compilations”. I’m not sure if I’m allowed to publish shaders with “3rd party code snippets” included. I guess it’s possible, but I might need some help to clarify those things.

Stay tuned, I will post screenshots and information about my shaders soon. On github you will find more and more of my shaders, but also overlays, backgrounds, and shader setup files.

Cheers! frenki (ArturoBandini)


Here are some screenshots of the ArtB_Outline.fx shader:


Coloured Outline:



“Mode 2” + inverted:

1 Like

Oh, I forgot to mention: ArtB_Outline is also available as RetroArch .slang shader. I was able to succesfully port it over, hence it’s only 1 pass and just simple calculations.

1 Like

Hey, that’s great :slight_smile:

Don’t worry about expectations. Everyone has to start somewhere!


I’ve just uploaded my second shader into my github repository. It’s a ReShade .fx shader for handling splitscreen content: “ArtB_Splitter.fx”. I made it mostly for NDS and 3DS emulation. But there are also some other ways to use this shader, as you will see ;-). It’s highly customizable. There are still some bugs, as it’s still WIP. But I think it’s ready for daily use.

MarioKart 7, standard core output:

Second screen on right side in the middle:

Second screen top left:

With transparency applied:


Of course size, position and alpha transparency are completely customizable for both screens. You can also define the split position, vertical and horizontal. Here’s some crazy stuff you can also achieve:

Define split position:

Zoom and move to the right:

Apply alpha transparency:

Activate background transparency (scanlines come from another shader):