Shader scaling - pixel detection

As u might know some cores have the ability to scale the picture via nearest neighbour. P-uae with higher resolution, snes with mode 7 upscale, desmume with hybrid scaling, beetle psx with higher resolution, etc. Those cores are doubling the pixles so that the shaders do not work properly anymore. Which is a pity because the user can only select one option. It would be nevertheless cool to have both option at once.

My idea for libretro would be to have some kind of pixel detection. Means if it is set to 1 it only considers 1 pixel for the shader input. If it is set to 2, the shader considers a field of 2x2 pixels as 1 input pixel for the shader. This would be useful when emulators scale the image by the factor 2. Therefore the algorithm of each shader can stay intact while the resolution can be increased via nearest neighbour.

What do u think?

1 Like