Trying Mask-less CRT Shaders

I’ve been trying some other CRT shaders without the mask and Lottes actually looks really good with some adjustments to the params and with image-adjustment thrown on top for gamma correction.

shaders = "2"
shader0 = "shaders_slang/misc/image-adjustment.slang"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
shader1 = "shaders_slang/crt/shaders/crt-lottes.slang"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = ""
float_framebuffer1 = "false"
srgb_framebuffer1 = "false"
parameters = "ia_target_gamma;ia_monitor_gamma;ia_overscan_percent_x;ia_overscan_percent_y;ia_saturation;ia_contrast;ia_luminance;ia_black_level;ia_bright_boost;ia_R;ia_G;ia_B;ia_ZOOM;ia_XPOS;ia_YPOS;ia_TOPMASK;ia_BOTMASK;ia_LMASK;ia_RMASK;ia_GRAIN_STR;ia_SHARPEN;ia_FLIP_HORZ;ia_FLIP_VERT;hardScan;hardPix;warpX;warpY;maskDark;maskLight;scaleInLinearGamma;shadowMask;brightBoost;hardBloomPix;hardBloomScan;bloomAmount;shape"
ia_target_gamma = "2.500000"
ia_monitor_gamma = "2.200000"
ia_overscan_percent_x = "0.000000"
ia_overscan_percent_y = "0.000000"
ia_saturation = "1.000000"
ia_contrast = "1.000000"
ia_luminance = "1.000000"
ia_black_level = "0.000000"
ia_bright_boost = "0.000000"
ia_R = "1.000000"
ia_G = "1.000000"
ia_B = "1.000000"
ia_ZOOM = "1.000000"
ia_XPOS = "0.000000"
ia_YPOS = "0.000000"
ia_TOPMASK = "0.000000"
ia_BOTMASK = "0.000000"
ia_LMASK = "0.000000"
ia_RMASK = "0.000000"
ia_GRAIN_STR = "0.000000"
ia_SHARPEN = "0.000000"
ia_FLIP_HORZ = "0.000000"
ia_FLIP_VERT = "0.000000"
hardScan = "-16.000000"
hardPix = "-4.000000"
warpX = "0.000000"
warpY = "0.000000"
maskDark = "0.500000"
maskLight = "1.500000"
scaleInLinearGamma = "1.000000"
shadowMask = "0.000000"
brightBoost = "1.150000"
hardBloomPix = "-1.500000"
hardBloomScan = "-2.000000"
bloomAmount = "0.000000"
shape = "2.000000"

Some more experiments involving CRT shaders without the mask. I tried to get everything looking the same so that the main difference is the image processing algorithms being used. Still have a few more to try.

EDIT: can this post please be made into a new thread? @hunterk








I feel like this would be something interesting to be put in its own thread, not complaining about it being here, lol.

But it would be cool to see these screens in a new topic/thread with thoughts on the differences and pros/cons of each shaders methods for different things, food for thought.


GTU and crtglow are my favorites for mask-less CRT shaders.


The glow shaders are nice, although not quite as versatile re: options. GTU is also nice, but I have a hard time configuring it to my liking- it’s tough getting the colors/contrast/etc just right. Any suggested settings or tips?

EDIT: added GTU to the examples. It’s tough getting the colors and such to match up but I assume that’s because it’s using a different color space. Looks very nice, indeed.

@hunterk could you please make the above post into a new topic when you’ve got the time? Comparing mask-less CRT shaders"

You should be able to make a topic on your own. (I mean I can and you were a member before me.)

Is there a specific reason you’re wanting @hunterk to do it?

Probably just because I can move all of the existing related posts at the same time. Anyway, done.


I like how crt-guest-dr-venom looks with no mask and glow with high values while being far from the screen.


Really like the Castlevania screen, and the glow is serious (in a good way, imo) on the Crash screen.

1 Like

:smile: Yes,I’ve put 0.50 value (glow). That’s the maximum (for crash bandicoot)

1 Like

That looks good on my iPhone screen. I’d probably lower the sharpness just a tad and increase the beam width variability, though. I don’t use glow in my setups because my main gaming display is a plasma, which already has its own glow.

1 Like

Thank you,yeah I don’t rembember what I did long time ago,but I did some tests and 9.0 sharpness value was the result,but I don’t remember what tests i made and others values in combination haha. The default value is good too. But if you play far from your screen,you can put 20.0. You won’t notice difference from meters aways excepts losing sharpness.

I think settings also depend on resolution and aspect ratio; just changing the vertical scale can have a big impact on how shaders look. You’re right that viewing distance also has a big impact; I play on a 60” screen from about 6-7 ft, so the viewing angle is maybe a bit less than when you’re at a desk in front of a monitor.

I’m quickly becoming a fan of GTU. I’m pretty happy with my current setup (see example above) but I think it could be a tad brighter and the colors seem just a bit off. It’s a tough one to configure but the horizontal filtering and scanlines are really nice. I added image-adjustment for gamma correction (the only thing I ever use it for), and that helped a bit. I also had to lower contrast to 0.80 from the default. Other parameters (contrast, black level, bright boost) had a negative impact on the picture quality.

1 Like

I think a can make a mask for your plasma, it will not be aperture or slotmask but more like a custom shadow mask. Not green magenta ,but black and white and without altering your RGB colors. If your plasma subpixels are like the one i had more then 10 years ago, it should be like this.




But the real question is can I make it work on any shaders :thinking:. Yes GTU is a very cool shader.


Here’s a close up of the subpixels:

The other issue is the temporal dithering that takes place; it basically blends the mask which just darkens the image.

It‘s a bit of a bummer, but the black level, contrast, phosphor glow, uniformity and low motion blur make up for it.


Oow you have another pattern that I was expecting,so even plasma had differents grid (good to know). Or maybe my Plasma was cheap (Bluesky). So now I have to think,you like GTU, so I can mix it with BlendOverlay (good news). Next I’m 100 % sure black and white is the key or black precisely (or grey). The difficulty is to manage the temporal dithering hmm. Edit: I’m gonna test it tomorrow, or I should say you gonna test it (lots of trials and errors since I’m doing this while being blind( without plasma on my hand). Good night!


As I understand it, the way a plasma works is that the subpixel can only be 100% on or off, and it compensates for this by being able to switch on/off several hundred times per second. The one I’m using boasts of a 600 Hz refresh rate.

1 Like

Both of these are guest-dr-venom:


I prefer the first screen.

Are you doing anything special or trying to go for a specific look?

I prefer the second :stuck_out_tongue: I like both though. Some content looks better blurred, other content looks better sharp.

The first one is my attempt to approximate the look of composite on a cheap, low TVL TV with a subpar notch filter. The second would be more like a high-end consumer set from the early 2000s using RGB.