Please show off what crt shaders can do!

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?


Yeah TVL stays 360 that doesn’t change.

But the thing I was talking about initially was the number of triads across a 4:3 screen at 360TVL.

Million hours in paint:

1 Like

AFAIK, it doesn’t do anything. It just sends it out 1:1 with the border filling in the rest of the dead space up to 256x224. It does make the image look fatter/wider, though, due to the SNES’ non-square pixels and 4:3 stretch.


ah, yes. I think I misunderstood you, sorry about that.

1 Like

No worries at all.

On another matter, how are you getting the color bleed in that Super Game Boy screenshot? Is it a composite signal shader?

Yep, guest-advanced-ntsc with a few tweaks. I feel like it spices up GB graphics a bit.

I’ve decided that the way SGB displays GB games is wrong because it alters the original aspect ratio and makes everything look fat. They could have easily padded the sides by whatever amount necessary to correctly display the original aspect ratio within the 4:3 area. So this is what gb games would look like on a hypothetical SGB that doesn’t alter the aspect ratio.:smiley: Correction: this is what games on SGB look like, lol.

I think gb games benefit from scanlines even though they obviously weren’t designed to be played on a CRT. This suggests that there’s more to the argument than “artist’s intentions.”