What is the best SNES core for smoothing graphics?

I noticed that most of the SNES cores don’t really smooth the graphics very well. For instance playing the SNES9X emulator without Retroarch but standalone by itself, I have options like: output image processing/6XBRZ that really filter and smooth out the pixels in any one SNES game.

But the SNES cores in Retroarch are missing these options. So, are there any other SNES Cores that can do this? Really filter and smooth out the graphics? Or did I miss these options somehow in SNES9X or the other SNES cores?

Those features are not typically handled by the cores in libretro and are instead handled by the frontend (in this case, RetroArch; specifically, via shaders). While you have a core and some content running, go back into the quick menu, scroll to the bottom and look for ‘shaders’. From there, ‘load’ and then go to shaders_glsl (assuming you’re using the default “gl” video driver). xBR/Z shaders are in there, along with ScaleFx. In the ‘presets’ directory, there are some based on ScaleFx that are as smooth/HD as you’re going to find:

Thank you for that but can you apply more than one shader? When I try to load a second shader along with the xBR/Z shader it cancels out the last one. Can I have more than 1 shader loaded at a time?

Sometimes. It depends on the shader, but it’s not 100% trivial.

The ‘load’ option loads a shader “preset” (*.glslp, *.cgp or *.slangp), which is a text file that explains how the different shaders interact. Sometimes that a single “effect” made up of several passes (this is how scalefx works), other times it’s just a single shader doing its thing.

When you load a preset, it will populate the menu with all of the passes involved. If you want to add another shader on the end, you can increase the number of passes by 1 and it will add a new section that says “pass X N/A”. You can go there and navigate to individual shader passes (*.glsl, *.cg or *.slang) and add them on top.

Fair warning: adding things on top of scalefx is usually fairly complicated since it pre-scales the image. For example, if you try to slap a CRT shader on top, the shader’s effects will look weird because they’re designed for low-res content. That is, scanlines will be very thin and probably look uneven.

Thank you! I appreciate it!