CRT Royale, while often recommended as one of the best CRT shaders, has never quite looked right on my 1366x768 native res television. It’s a good TV and I don’t really notice the difference between 720p and 1080p with my eyesight anyway. What I do notice is that CRT Royale looks terrible on my screen and I always accepted this as a downside to using an old TV. CRT Royale is intended for 1080p or higher (and reportedly looks best in the 4k range). That said, I tried to play Seiken Densetsu 3 lately and had some difficulty with my favorite shader (NTSC Shadowmask) not handling SD3’s dynamic resolution changes well. I gave Royale another shot and wasn’t happy with the results, but then was reminded of an old idea I had to run it through Nvidia DSR to improve the quality of the shader.

NVidia DSR is a “supersampling” technology. Nvidia DSR runs your PC games at higher resolution than your monitor actually supports, and then downscales the image to your screen’s native resolution. It’s basically antialiasing for the whole screen. Instead of trying to detect aliasing, we just run the game at a resolution where the aliasing will not be noticeable at your native resolution.

While “aliasing” isn’t the exact problem that running a shader at 1366x768 gives me, the DSR method gives me the results I want. Essentially running Retroarch’s shaders at about 3K resolution (2723x1536). Nvidia DSR will run your GPU at 4x the resolution of your monitor, so 1080p would be able to go to 4k. I’ll explain my method of getting this working smoothly, but in the meantime, here are some comparison shots . Keep in mind that these are displayed at 3K, so this is not what the actual image looks like on my screen (it is downscaled by the nvidia software). I’ve included a native comparison as well, but the 3K is scaled down by MS paint so not exactly accurate either. You would have to see it on the actual display to get the real picture. Nevertheless, from these comparisons, the improvement is clear.

Comparisons (2732x1536 screenshots – you need to zoom in on lower res displays)

CRT Royale NTSC 256 Composite We can see that the DSR image is much smoother/cleaner, no blocky bright artifacts on the roof, for example (I’m not going to pretend I know the correct terms for this stuff, so forgive me). There is less obvious masking on the image, so the colors appear more vibrant (I think because there is less pixel resolution being used for the mask). CRT Royale (Vanilla) Similar to the 256p version, but the improvement is more pronounced. NTSC Shadowmask Greatly improved masking CRT Easy Mode Not much change, but improved clarity CRT Easy Mode (downscaled to native res by MS paint) Just here for an example to show that the changes and improvements “stick” even when downscaled back to native res.

After doing these comparisons I’ve decided that the improvement here is worth using all the time. I will in the future be running Retroarch in 2732x1536. I have been able to automate this and I will now give a brief tutorial.

Set up NVidia DSR for your system (requires a supported GPU). A quick note on “smoothness”: To downscale, DSR needs to have some method of determining which part of the giant resolution screen to display on your native resolution’s individual pixels. Nvidia provides a “smoothness” slider which is basically a sharpness(0%) to bluriness(100%) slider. I found that the default 33% looked great on my screen but 0% would be the most “correct” to my understanding. Download “qres” (source() and place it in your Retroarch folder or Windows\system32. Go into Nvidia Control Panel and look under Display>Change Resolution. Find the DSR resolution that you want to use listed under “dynamic super resolutions” (if unsure choose the highest, only use lower if you have performance issues). Mine is 2732x1536 Create a new batch file in your Retroarch folder (you can create a text file and rename it to .bat). In the batch file enter the following, replacing the DSR and native resolution arguments with the correct resolutions for your display.

Retroarch High Res.bat

qres /x 2732 /y 1536 retroarch qres /x 1366 /y 768 exit

and save the file.

Now whenever you launch retroarch from this batch file, it will run in the higher resolution mode, and you will have super-sampled shaders.

Also here’s a bonus batch script I stuck on my start menu to swap the desktop between native res and DSR res, just in case I alt+tab or end up in the wrong res somehow.

fixres.bat