Please show off what crt shaders can do!

You’re going to need a decent cpu and gpu, there’s a few CRT shaders that are pretty heavy tbh.

1 Like

could a rx 580 be enough or gtx 1060?

For most things probably, but tbh the upper end is really dumb afaik with CRT shaders at 4k (so if you’re wanting to run all CRT shaders at 4k then the answer is no.

I was afraid of that I did not wanted to spent too much on a card. I have gtx1080 on my desktop and that runs all my crt shaders at 4k without any problems. I thought I could get something cheaper. So I guess it has to be gtx 1080 or better. How about cpu the laptop I am getting has a i7-8565U is that good enough?. I am planning in hooking up the laptop with an egpu with thunderbolt 3.

Sorry if this is a dumb question, but how do I use/apply your settings?


For extreme_tiger’s presets you need the below shader installed properly, which is part of the Guest shader package.

For mine, you need HSM Mega Bezel Reflection Shader.

Once the packages are installed, you just copy the text from the preset and save it in your RetroArch/Shaders folder as a *.slangp file and you then open a game and choose Quick Menu, Shaders, Load then load up your new preset.

You’ll find the presets below.


Some “dirty” screenshot crops of the CyberLab Mega Bezel Death To Pixels (Arcade - Sharp) preset in action!


Cool! Can you share it?

1 Like

A GTX 1060 for 4k might be enough. You can probably extrapolate this roughly if you run a low cpu demanding core like the NES ones without shaders me without shaders and check the FPS you’re getting. Then compare by running the same game with a heavy shader like CRT Royale. You’re probably still getting plenty of FPS, multiple times fullspeed.

1 Like

I was trying to account for 3D systems but ye.

I have a 1660ti, I think that should suffice for 4K CRT shaders, but your processor can’t be a HUGE bottleneck. Maybe pair it with a Ryzen 1700x or 2700x?

Just my 2 cents.

1 Like

Create an .slangp file in your Retroarch’s “shaders” directory (on Windows, this is %APPDATA%\Retroarch\shaders) and copy paste the settings I posted there.

Then just load that slangp file from within Retroarch.

You should also update your crt-guest-advanced shaders by downloading the latest zip from and replacing the old files in the shaders/crt folder with those.


Thank you all for the reply. Unfortunately, I receive the laptop from ebay yesterday and I am now in the process of a return claim. In the ebay posting it said the laptop was 4k but when I receive it was not 4k. If I receive a refund I am going to hold off on the idea of playing 4k shaders on laptops since it needs a powerfull CPU. Maybe I buy a 5k monitor for my desktop in the future for slotmask crt shaders. I wish 8k monitors be affordable so we can see how crt shaders look like at 8k. Maybe in 2 years they come down in price.

Share what exactly? HSM Mega Bezel? Are you asking me or extreme_tiger?

Your preset of HSM Mega Bezel.

1 Like

Are you sure? 360 TVL means you have 360 distinct vertical lines within a circle that extends to the top and bottom of the screen, so wouldn’t that mean 360 “pixels” measured horizontally? (1 pixel = 1 phosphor triad)

Looks great, good write up and observations. Very similar to approaches I’ve taken in the past, maxing out the mask and scanlines and using the backlight to compensate, etc. Well done.

Wooo, exciting stuff! I’ve been waiting for this. Why d3d12 though?


it was just what they decided to work on :man_shrugging:, however they went ahead and added d3d11, too, and they recently mentioned that they’re going to try making the slang shader system HDR-aware (that is, making presets able to request non-mapped framebuffers so we can do our own tonemapping as needed), so fingers crossed that they’re able to make that happen.


360 triads measured horizontally across a length equal to 1 unit of height. But if your screen has a 4:3 aspect ratio, then the width is 4/3rds the height. So, across the whole width of the screen will be 360 * 4:3 = 480 triads. If the screen were 16:9 it would be 640 triads across. The whole time TVL, which is an aspect ratio independent measure of resolution, would stay 360.

This is my understanding anyway.

So anyway if across one scanline, you have 480 triads for 320 source samples, that’s exactly 1.5 triads per sample.

Thanks! I learned a lot from your posts and presets ITT. When I had a 1600p screen, I’d just use one of your presets. But now that I have a 4K screen, I decided to modify things a bit.

I think the next big step for CRT emulation is going to be DisplayHDR True Black displays i.e. per pixel HDR, but at high refresh rates and resolutions. I wasn’t able to find any monitor on the market that was all three of: 4K+, 120HZ+ G-Sync, HDR. My current display just has something like 16 by 16 HDR zones lol.

With per pixel HDR, you won’t have to wash out host display pixels with white to emulate brightness i.e. mask strength of 1 would now work perfectly.


Not to be a pedant, but TVL is measured within a circle that extends to the top/bottom of the screen. So if the height is 1 unit the width is also 1 unit, no need to multiply 360 by 4/3 or whatever. :slight_smile:

This isn’t the right place for this but whatever. What does Super Gameboy do to the resolution of gb games? I can’t find any relevant info.

Does this look correct?