Please show off what crt shaders can do!

lol I messed up, meant to reply to your post on the Guest shader thread.

1 Like

that makes sense, then. lol

Well not “technical” contrast, I mean in the overall image, I would prefer something “softer”. Let’s say blacks are very black and bright colors are very bright. :grinning:

That’s deliberate. The contrast ratio on a CRT blows any SDR LCD out of the water, that’s a big part of what I’m trying to replicate.

That’s cool and all, but I did ask for objective criticism, not criticism based on personal taste.

Ah, thanks for the tip! Actually I hadn’t tried 11 and 12, as they are “not listed”. What’s the difference between 10 and 11? I see it’s way more bright, but why? :smiley:

Edit: ah I see, the mask is more “open” and “clean”. I think I prefer the structure of mask 10 still, but 11 is good too!

I’ve just remebered that I did a JVC ‘D Series’ AV-36D501 simulation a few weeks ago that I never shared. So to make amends here it is!

As always make the video play back fullscreen in 4K mode if possible!

JVC ‘D Series’ AV-36D501

Sony Megatron

CRT Photos: No idea from a YouTube video

LCD Photos: OnePlus 8 Pro Camera: Pro Mode, ISO 200, WB 6500K, Aperture Speed 1/60, Auto Focus, 48MPixel JPEG.

More details:


It comes down to the subpixel structure. Mask 10 is RGBX (red-green-blue-black), while Mask 11 is RYCB (red-yellow-cyan-blue). So while Mask 10 is technically more accurate to a CRT’s phosphors, in practice Mask 11 looks very similar at viewing distance and simply emits more light.


Allow me to pick my jaw up off the floor…

If you have the hardware for this, there is no reason to use any other shader.


If you’re into curvature there probably is - I’m not sure I have the stomach for that ATM. :joy: I have other plans in the works though along those lines.

1 Like

Even doing extreme things with the sharpness controls, I haven’t been able to get the horizontal edges to match the vertical edges. Is it possible?

btw it’s guest-dr-venom. It’s always guest-dr-venom. (I don’t have a 4K setup for Megatron :frowning: )


Using crt gamma and pronounced scanlines, combined with the PAR which the core provides makes the situation favoring brighter pixels in horizontal stretch.

But you can get a different situation using a pixel perfect aspect ratio, mild scanlines and increased horizontal sharpness.


“Scanline spike removal” could be the answer. A value of 1 should do the trick, or more if needed.


Megatron “crappy” TV preset adjusted for 1080p. Looks fantastic, IMO.


lol that’s waaay to dark for my displays, but I can still tell it ticks all of your boxes, so cheers!


even fully zoomed in? The scaled thumbnail is ridiculously dark. It’s literally just @MajorPainTheCactus’s preset but with the mask adjusted for 1080p.

1 Like

It’s just ironic and sad that the better the preset the worse the screenshot.


here are the settings if you want to give them a spin.

shaders = "5"
feedback_pass = "0"
shader0 = "shaders_slang/ntsc/shaders/ntsc-adaptive/ntsc-pass1.slang"
filter_linear0 = "false"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "true"
srgb_framebuffer0 = "false"
scale_type_x0 = "source"
scale_x0 = "4.000000"
scale_type_y0 = "source"
scale_y0 = "1.000000"
shader1 = "shaders_slang/ntsc/shaders/ntsc-adaptive/ntsc-pass2.slang"
filter_linear1 = "true"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = ""
float_framebuffer1 = "false"
srgb_framebuffer1 = "false"
scale_type_x1 = "source"
scale_x1 = "0.750000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/hdr/shaders/crt-sony-megatron-source-pass.slang"
filter_linear2 = "false"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "SourceSDR"
float_framebuffer2 = "false"
srgb_framebuffer2 = "false"
scale_type_x2 = "source"
scale_x2 = "1.000000"
scale_type_y2 = "source"
scale_y2 = "1.000000"
shader3 = "shaders_slang/hdr/shaders/crt-sony-megatron-hdr-pass.slang"
filter_linear3 = "false"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = "SourceHDR"
float_framebuffer3 = "false"
srgb_framebuffer3 = "false"
scale_type_x3 = "source"
scale_x3 = "1.000000"
scale_type_y3 = "source"
scale_y3 = "1.000000"
shader4 = "shaders_slang/hdr/shaders/crt-sony-megatron.slang"
filter_linear4 = "false"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = ""
float_framebuffer4 = "false"
srgb_framebuffer4 = "false"
hcrt_hdr = "0.000000"
hcrt_blue_horizontal_convergence = "-1.000000"
hcrt_crt_resolution = "2.000000"
hcrt_red_scanline_min = "1.000000"
hcrt_red_scanline_max = "1.100000"
hcrt_red_scanline_attack = "0.850000"
hcrt_green_scanline_min = "1.000000"
hcrt_green_scanline_max = "1.100000"
hcrt_green_scanline_attack = "0.850000"
hcrt_blue_scanline_min = "1.000000"
hcrt_blue_scanline_max = "1.100000"
hcrt_blue_scanline_attack = "0.850000"
hcrt_red_beam_sharpness = "1.000000"
hcrt_red_beam_attack = "0.000000"
hcrt_green_beam_sharpness = "1.000000"
hcrt_green_beam_attack = "0.000000"
hcrt_blue_beam_sharpness = "1.000000"
hcrt_blue_beam_attack = "0.000000"

Yeah, even zoomed in, the white text is almost exactly the same gray as my scrollbars


With that said, if I were in a totally dark room, it would probably be fine.


Look at this rainbow!!! :rofl: Seriously that just happened on my phone as I scrolled down!


TBH, I’d like it if it was a little brighter as well, but I think the brightness and gamma can be played with. I just started playing with the shader.

I was mostly referring to how clean it looks, overall. No harsh or awkward artifacts, just the artifacts that are supposed to be there. The blending looks very natural. It makes me realize that all this time I was bitching about the NTSC stuff not looking right, it was really just everything else that the shader was doing.