Please show off what crt shaders can do!

It looks quite nice with 1440p, with 4k it should look acceptable also i guess. It could look a bit coarse with 1080p though.

1 Like

A little retouch of my console preset.

I’ve tried to obtain something with no much fuss, balancing glow, bloom, halation and post brightness (which is a pain) and touching just a little of other settings. Let me know what you think, just save as “global.slangp” and put it in “config” folder.

Latest guest’s shader required, best in 1440p.

#reference "../shaders/shaders_slang/crt/crt-guest-advanced-ntsc.slangp"
wp_saturation = "0.800000"
vigstr = "0.400000"
S_SHARP = "0.600000"
HSHARP = "1.800000"
glow = "0.200000"
bloom = "-0.400000"
halation = "-0.200000"
warpX = "0.030000"
warpY = "0.040000"
csize = "0.010000"
bsize1 = "0.100000"
shadowMask = "10.000000"
maskstr = "1.000000"
slotmask = "1.000000"
slotmask1 = "1.000000"
slotwidth = "4.000000"
double_slot = "2.000000"
post_br = "1.200000"

2 Likes

Seems very washed out IMO, but that’s a whole look in itself I guess. I’m used to CRTs with bright, vivid colors.

2 Likes

Yeah, maybe 0.90 instead of 0.80 for saturation should be better. But regarding SNES emulation I think 0,80 could be the right value, as SNES emulation always seems a little oversaturated.

Leave it at the default 1? Not if you use bloom, in my opinion, as bloom makes colors pop up. So maybe 0,90 for everything but SNES.

1 Like

Can you tell the difference between these two screenshots?

Ok… the difference was much less noticeable when the revision was in it’s infancy

The top image is from from my above post. The bottom is a revision I made after the realization that although opus was color faithful in many places, in some games dark pixels were a little too dark. Bright Boost Dark 0.60 is probably not a good Idea.

Then again, looking through those same games I thought had problems, the difference is fairly minor. I’m not really sure why I reconfigured the brightness settings anymore.

It’s still an Improvement though. Pretty close to perfect.

Download link: https://mega.nz/file/hXlS3K6T#T5KHTk6YsNERnZ-OK31h65Z8qbT5uaaX5FVkwk3xeck

crt-guest-advanced-ntsc-hereticzero-opus-rev1.slangp

shaders = "18"
shader0 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear0 = "false"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
scale_type_x0 = "source"
scale_x0 = "1.000000"
scale_type_y0 = "source"
scale_y0 = "1.000000"
shader1 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear1 = "false"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "StockPass"
float_framebuffer1 = "false"
srgb_framebuffer1 = "false"
scale_type_x1 = "source"
scale_x1 = "1.000000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/crt/shaders/guest/advanced/afterglow0.slang"
filter_linear2 = "true"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "AfterglowPass"
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/crt/shaders/guest/advanced/pre-shaders-afterglow.slang"
filter_linear3 = "true"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = "PrePass0"
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/crt/shaders/guest/advanced/ntsc/ntsc-pass1.slang"
filter_linear4 = "false"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = "NPass1"
float_framebuffer4 = "true"
srgb_framebuffer4 = "false"
scale_type_x4 = "source"
scale_x4 = "4.000000"
scale_type_y4 = "source"
scale_y4 = "1.000000"
shader5 = "shaders_slang/crt/shaders/guest/advanced/ntsc/ntsc-pass2.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = ""
float_framebuffer5 = "true"
srgb_framebuffer5 = "false"
scale_type_x5 = "source"
scale_x5 = "0.500000"
scale_type_y5 = "source"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/guest/advanced/ntsc/ntsc-pass3.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = ""
float_framebuffer6 = "false"
srgb_framebuffer6 = "false"
scale_type_x6 = "source"
scale_x6 = "1.000000"
scale_type_y6 = "source"
scale_y6 = "1.000000"
shader7 = "shaders_slang/crt/shaders/guest/advanced/custom-fast-sharpen.slang"
filter_linear7 = "true"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = "NtscPass"
float_framebuffer7 = "false"
srgb_framebuffer7 = "false"
scale_type_x7 = "source"
scale_x7 = "1.000000"
scale_type_y7 = "source"
scale_y7 = "1.000000"
shader8 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "true"
alias8 = "PrePass"
float_framebuffer8 = "false"
srgb_framebuffer8 = "false"
scale_type_x8 = "source"
scale_x8 = "1.000000"
scale_type_y8 = "source"
scale_y8 = "1.000000"
shader9 = "shaders_slang/crt/shaders/guest/advanced/avg-lum-ntsc.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "true"
alias9 = "AvgLumPass"
float_framebuffer9 = "false"
srgb_framebuffer9 = "false"
scale_type_x9 = "source"
scale_x9 = "1.000000"
scale_type_y9 = "source"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/guest/advanced/linearize-ntsc.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = "LinearizePass"
float_framebuffer10 = "true"
srgb_framebuffer10 = "false"
scale_type_x10 = "source"
scale_x10 = "1.000000"
scale_type_y10 = "source"
scale_y10 = "1.000000"
shader11 = "shaders_slang/crt/shaders/guest/advanced/crt-guest-advanced-ntsc-pass1.slang"
filter_linear11 = "true"
wrap_mode11 = "clamp_to_border"
mipmap_input11 = "false"
alias11 = "Pass1"
float_framebuffer11 = "true"
srgb_framebuffer11 = "false"
scale_type_x11 = "viewport"
scale_x11 = "1.000000"
scale_type_y11 = "source"
scale_y11 = "1.000000"
shader12 = "shaders_slang/crt/shaders/guest/advanced/gaussian_horizontal.slang"
filter_linear12 = "true"
wrap_mode12 = "clamp_to_border"
mipmap_input12 = "false"
alias12 = ""
float_framebuffer12 = "true"
srgb_framebuffer12 = "false"
scale_type_x12 = "absolute"
scale_x12 = "800"
scale_type_y12 = "source"
scale_y12 = "1.000000"
shader13 = "shaders_slang/crt/shaders/guest/advanced/gaussian_vertical.slang"
filter_linear13 = "true"
wrap_mode13 = "clamp_to_border"
mipmap_input13 = "false"
alias13 = "GlowPass"
float_framebuffer13 = "true"
srgb_framebuffer13 = "false"
scale_type_x13 = "absolute"
scale_x13 = "800"
scale_type_y13 = "absolute"
scale_y13 = "600"
shader14 = "shaders_slang/crt/shaders/guest/advanced/bloom_horizontal.slang"
filter_linear14 = "true"
wrap_mode14 = "clamp_to_border"
mipmap_input14 = "false"
alias14 = ""
float_framebuffer14 = "true"
srgb_framebuffer14 = "false"
scale_type_x14 = "absolute"
scale_x14 = "800"
scale_type_y14 = "absolute"
scale_y14 = "600"
shader15 = "shaders_slang/crt/shaders/guest/advanced/bloom_vertical.slang"
filter_linear15 = "true"
wrap_mode15 = "clamp_to_border"
mipmap_input15 = "false"
alias15 = "BloomPass"
float_framebuffer15 = "true"
srgb_framebuffer15 = "false"
scale_type_x15 = "absolute"
scale_x15 = "800"
scale_type_y15 = "absolute"
scale_y15 = "600"
shader16 = "shaders_slang/crt/shaders/guest/advanced/crt-guest-advanced-ntsc-pass2.slang"
filter_linear16 = "true"
wrap_mode16 = "clamp_to_border"
mipmap_input16 = "false"
alias16 = ""
float_framebuffer16 = "true"
srgb_framebuffer16 = "false"
scale_type_x16 = "viewport"
scale_x16 = "1.000000"
scale_type_y16 = "viewport"
scale_y16 = "1.000000"
shader17 = "shaders_slang/crt/shaders/guest/advanced/deconvergence-ntsc.slang"
filter_linear17 = "true"
wrap_mode17 = "clamp_to_border"
mipmap_input17 = "false"
alias17 = ""
float_framebuffer17 = "false"
srgb_framebuffer17 = "false"
scale_type_x17 = "viewport"
scale_x17 = "1.000000"
scale_type_y17 = "viewport"
scale_y17 = "1.000000"
PR = "0.460000"
PG = "0.460000"
PB = "0.460000"
AS = "0.100000"
sat = "1.000000"
vigstr = "0.100000"
quality = "-1.000000"
ntsc_bright = "1.020000"
cust_artifacting = "0.500000"
ntsc_ring = "1.000000"
interm = "0.000000"
S_SHARP = "1.400000"
spike = "0.000000"
SIZEH = "50.000000"
SIGMA_H = "2.999999"
SIZEV = "50.000000"
SIGMA_V = "2.999999"
SIZEHB = "50.000000"
SIGMA_HB = "0.350000"
SIZEVB = "50.000000"
SIGMA_VB = "0.350000"
glow = "0.070000"
mask_bloom = "0.150000"
bloom_dist = "3.000000"
halation = "0.120000"
gamma_c = "1.050000"
brightboost = "0.900000"
brightboost1 = "1.000000"
gsl = "2.000000"
scanline1 = "11.000000"
scanline2 = "25.000000"
beam_min = "0.550000"
beam_max = "0.700000"
beam_size = "0.400000"
vertmask = "-0.200000"
scans = "0.050000"
scan_falloff = "0.750000"
scangamma = "2.150000"
shadowMask = "13.000000"
maskstr = "0.850000"
mcut = "1.500000"
maskboost = "1.649999"
mshift = "5.000000"
mclip = "0.750000"
deconrr = "-0.500000"
deconrg = "-0.250000"
deconrb = "0.500000"
post_br = "1.110000"
textures = "SamplerLUT1;SamplerLUT2;SamplerLUT3;SamplerLUT4"
SamplerLUT1 = "shaders_slang/crt/shaders/guest/advanced/lut/trinitron-lut.png"
SamplerLUT1_linear = "true"
SamplerLUT1_wrap_mode = "clamp_to_border"
SamplerLUT1_mipmap = "false"
SamplerLUT2 = "shaders_slang/crt/shaders/guest/advanced/lut/inv-trinitron-lut.png"
SamplerLUT2_linear = "true"
SamplerLUT2_wrap_mode = "clamp_to_border"
SamplerLUT2_mipmap = "false"
SamplerLUT3 = "shaders_slang/crt/shaders/guest/advanced/lut/nec-lut.png"
SamplerLUT3_linear = "true"
SamplerLUT3_wrap_mode = "clamp_to_border"
SamplerLUT3_mipmap = "false"
SamplerLUT4 = "shaders_slang/crt/shaders/guest/advanced/lut/ntsc-lut.png"
SamplerLUT4_linear = "true"
SamplerLUT4_wrap_mode = "clamp_to_border"
SamplerLUT4_mipmap = "false"

crt-guest-advanced-hereticzero-opus-rev1.slangp

shaders = "12"
shader0 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear0 = "false"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
scale_type_x0 = "source"
scale_x0 = "1.000000"
scale_type_y0 = "source"
scale_y0 = "1.000000"
shader1 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear1 = "false"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "StockPass"
float_framebuffer1 = "false"
srgb_framebuffer1 = "false"
scale_type_x1 = "source"
scale_x1 = "1.000000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/crt/shaders/guest/advanced/afterglow0.slang"
filter_linear2 = "false"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "AfterglowPass"
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/crt/shaders/guest/advanced/pre-shaders-afterglow.slang"
filter_linear3 = "false"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "true"
alias3 = "PrePass"
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/crt/shaders/guest/advanced/avg-lum.slang"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "true"
alias4 = "AvgLumPass"
float_framebuffer4 = "false"
srgb_framebuffer4 = "false"
scale_type_x4 = "source"
scale_x4 = "1.000000"
scale_type_y4 = "source"
scale_y4 = "1.000000"
shader5 = "shaders_slang/crt/shaders/guest/advanced/linearize.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = "LinearizePass"
float_framebuffer5 = "true"
srgb_framebuffer5 = "false"
scale_type_x5 = "source"
scale_x5 = "1.000000"
scale_type_y5 = "source"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/guest/advanced/gaussian_horizontal.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = ""
float_framebuffer6 = "true"
srgb_framebuffer6 = "false"
scale_type_x6 = "absolute"
scale_x6 = "800"
scale_type_y6 = "source"
scale_y6 = "1.000000"
shader7 = "shaders_slang/crt/shaders/guest/advanced/gaussian_vertical.slang"
filter_linear7 = "true"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = "GlowPass"
float_framebuffer7 = "true"
srgb_framebuffer7 = "false"
scale_type_x7 = "absolute"
scale_x7 = "800"
scale_type_y7 = "absolute"
scale_y7 = "600"
shader8 = "shaders_slang/crt/shaders/guest/advanced/bloom_horizontal.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "false"
alias8 = ""
float_framebuffer8 = "true"
srgb_framebuffer8 = "false"
scale_type_x8 = "absolute"
scale_x8 = "800"
scale_type_y8 = "absolute"
scale_y8 = "600"
shader9 = "shaders_slang/crt/shaders/guest/advanced/bloom_vertical.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "false"
alias9 = "BloomPass"
float_framebuffer9 = "true"
srgb_framebuffer9 = "false"
scale_type_x9 = "source"
scale_x9 = "1.000000"
scale_type_y9 = "source"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/guest/advanced/crt-guest-advanced.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = ""
float_framebuffer10 = "true"
srgb_framebuffer10 = "false"
scale_type_x10 = "viewport"
scale_x10 = "1.000000"
scale_type_y10 = "viewport"
scale_y10 = "1.000000"
shader11 = "shaders_slang/crt/shaders/guest/advanced/deconvergence.slang"
filter_linear11 = "true"
wrap_mode11 = "clamp_to_border"
mipmap_input11 = "false"
alias11 = ""
float_framebuffer11 = "false"
srgb_framebuffer11 = "false"
scale_type_x11 = "viewport"
scale_x11 = "1.000000"
scale_type_y11 = "viewport"
scale_y11 = "1.000000"
PR = "0.460000"
PG = "0.460000"
PB = "0.460000"
AS = "0.100000"
sat = "1.000000"
vigstr = "0.100000"
GAMMA_INPUT = "2.000000"
interm = "0.000000"
SIZEH = "50.000000"
SIGMA_H = "2.999999"
SIZEV = "50.000000"
SIGMA_V = "2.999999"
SIZEHB = "50.000000"
SIGMA_HB = "0.350000"
SIZEVB = "50.000000"
SIGMA_VB = "0.350000"
glow = "0.070000"
mask_bloom = "0.150000"
bloom_dist = "3.000000"
halation = "0.120000"
gamma_c = "1.050000"
brightboost = "0.900000"
brightboost1 = "1.000000"
gsl = "2.000000"
scanline1 = "11.000000"
scanline2 = "25.000000"
beam_min = "0.550000"
beam_max = "0.700000"
beam_size = "0.400000"
vertmask = "-0.200000"
scans = "0.050000"
scan_falloff = "0.750000"
spike = "0.000000"
scangamma = "2.150000"
s_sharp = "1.400000"
shadowMask = "13.000000"
maskstr = "0.850000"
mcut = "1.500000"
maskboost = "1.649999"
mshift = "5.000000"
mclip = "0.750000"
gamma_out = "1.950001"
deconrr = "-0.500000"
deconrg = "-0.250000"
deconrb = "0.500000"
post_br = "1.110000"
textures = "SamplerLUT1;SamplerLUT2;SamplerLUT3;SamplerLUT4"
SamplerLUT1 = "shaders_slang/crt/shaders/guest/advanced/lut/trinitron-lut.png"
SamplerLUT1_linear = "true"
SamplerLUT1_wrap_mode = "clamp_to_border"
SamplerLUT1_mipmap = "false"
SamplerLUT2 = "shaders_slang/crt/shaders/guest/advanced/lut/inv-trinitron-lut.png"
SamplerLUT2_linear = "true"
SamplerLUT2_wrap_mode = "clamp_to_border"
SamplerLUT2_mipmap = "false"
SamplerLUT3 = "shaders_slang/crt/shaders/guest/advanced/lut/nec-lut.png"
SamplerLUT3_linear = "true"
SamplerLUT3_wrap_mode = "clamp_to_border"
SamplerLUT3_mipmap = "false"
SamplerLUT4 = "shaders_slang/crt/shaders/guest/advanced/lut/ntsc-lut.png"
SamplerLUT4_linear = "true"
SamplerLUT4_wrap_mode = "clamp_to_border"
SamplerLUT4_mipmap = "false"
1 Like

If I’m being brutally honest both screenshots are a bit washed out. Are you targeting the raw colors in the emulator? Or do have a CRT for reference…? I think there’s a misconception floating around that CRTs were dim/washed out, which couldn’t be further from the truth. Of course, tastes vary, so maybe you’re just going for a more “vintage” look.

The screenshots are both NTSC. I use the NTSC preset by default. Aside from that I target raw. A non NTSC preset is included.

crt-guest-advanced-hereticzero-opus.slangp

crt-guest-advanced-hereticzero-opus-rev1.slangp

1 Like

What do you do when you’re satisfied with your universal general purpose shader preset? Make console or game specific presets? No! You try to make the most obnoxiously terrible garbage preset possible.

Which is easier said than done. Some bad Ideas nurf other bad ideas. Some good ideas sneak their way in. You start seeing things you didn’t realize the shader was capable of before. And ultimately you sacrifice a bit “bad” in the name of “interesting”, but still manage to make something absolutely cursed.

TheCursedSpost

shaders = "18"
shader0 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear0 = "false"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
scale_type_x0 = "source"
scale_x0 = "1.000000"
scale_type_y0 = "source"
scale_y0 = "1.000000"
shader1 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear1 = "false"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "StockPass"
float_framebuffer1 = "false"
srgb_framebuffer1 = "false"
scale_type_x1 = "source"
scale_x1 = "1.000000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/crt/shaders/guest/advanced/afterglow0.slang"
filter_linear2 = "true"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "AfterglowPass"
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/crt/shaders/guest/advanced/pre-shaders-afterglow.slang"
filter_linear3 = "true"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = "PrePass0"
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/crt/shaders/guest/advanced/ntsc/ntsc-pass1.slang"
filter_linear4 = "false"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = "NPass1"
float_framebuffer4 = "true"
srgb_framebuffer4 = "false"
scale_type_x4 = "source"
scale_x4 = "4.000000"
scale_type_y4 = "source"
scale_y4 = "1.000000"
shader5 = "shaders_slang/crt/shaders/guest/advanced/ntsc/ntsc-pass2.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = ""
float_framebuffer5 = "true"
srgb_framebuffer5 = "false"
scale_type_x5 = "source"
scale_x5 = "0.500000"
scale_type_y5 = "source"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/guest/advanced/ntsc/ntsc-pass3.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = ""
float_framebuffer6 = "false"
srgb_framebuffer6 = "false"
scale_type_x6 = "source"
scale_x6 = "1.000000"
scale_type_y6 = "source"
scale_y6 = "1.000000"
shader7 = "shaders_slang/crt/shaders/guest/advanced/custom-fast-sharpen.slang"
filter_linear7 = "true"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = "NtscPass"
float_framebuffer7 = "false"
srgb_framebuffer7 = "false"
scale_type_x7 = "source"
scale_x7 = "1.000000"
scale_type_y7 = "source"
scale_y7 = "1.000000"
shader8 = "shaders_slang/crt/shaders/guest/advanced/stock.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "true"
alias8 = "PrePass"
float_framebuffer8 = "false"
srgb_framebuffer8 = "false"
scale_type_x8 = "source"
scale_x8 = "1.000000"
scale_type_y8 = "source"
scale_y8 = "1.000000"
shader9 = "shaders_slang/crt/shaders/guest/advanced/avg-lum-ntsc.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "true"
alias9 = "AvgLumPass"
float_framebuffer9 = "false"
srgb_framebuffer9 = "false"
scale_type_x9 = "source"
scale_x9 = "1.000000"
scale_type_y9 = "source"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/guest/advanced/linearize-ntsc.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = "LinearizePass"
float_framebuffer10 = "true"
srgb_framebuffer10 = "false"
scale_type_x10 = "source"
scale_x10 = "1.000000"
scale_type_y10 = "source"
scale_y10 = "1.000000"
shader11 = "shaders_slang/crt/shaders/guest/advanced/crt-guest-advanced-ntsc-pass1.slang"
filter_linear11 = "true"
wrap_mode11 = "clamp_to_border"
mipmap_input11 = "false"
alias11 = "Pass1"
float_framebuffer11 = "true"
srgb_framebuffer11 = "false"
scale_type_x11 = "viewport"
scale_x11 = "1.000000"
scale_type_y11 = "source"
scale_y11 = "1.000000"
shader12 = "shaders_slang/crt/shaders/guest/advanced/gaussian_horizontal.slang"
filter_linear12 = "true"
wrap_mode12 = "clamp_to_border"
mipmap_input12 = "false"
alias12 = ""
float_framebuffer12 = "true"
srgb_framebuffer12 = "false"
scale_type_x12 = "absolute"
scale_x12 = "800"
scale_type_y12 = "source"
scale_y12 = "1.000000"
shader13 = "shaders_slang/crt/shaders/guest/advanced/gaussian_vertical.slang"
filter_linear13 = "true"
wrap_mode13 = "clamp_to_border"
mipmap_input13 = "false"
alias13 = "GlowPass"
float_framebuffer13 = "true"
srgb_framebuffer13 = "false"
scale_type_x13 = "absolute"
scale_x13 = "800"
scale_type_y13 = "absolute"
scale_y13 = "600"
shader14 = "shaders_slang/crt/shaders/guest/advanced/bloom_horizontal.slang"
filter_linear14 = "true"
wrap_mode14 = "clamp_to_border"
mipmap_input14 = "false"
alias14 = ""
float_framebuffer14 = "true"
srgb_framebuffer14 = "false"
scale_type_x14 = "absolute"
scale_x14 = "800"
scale_type_y14 = "absolute"
scale_y14 = "600"
shader15 = "shaders_slang/crt/shaders/guest/advanced/bloom_vertical.slang"
filter_linear15 = "true"
wrap_mode15 = "clamp_to_border"
mipmap_input15 = "false"
alias15 = "BloomPass"
float_framebuffer15 = "true"
srgb_framebuffer15 = "false"
scale_type_x15 = "absolute"
scale_x15 = "800"
scale_type_y15 = "absolute"
scale_y15 = "600"
shader16 = "shaders_slang/crt/shaders/guest/advanced/crt-guest-advanced-ntsc-pass2.slang"
filter_linear16 = "true"
wrap_mode16 = "clamp_to_border"
mipmap_input16 = "false"
alias16 = ""
float_framebuffer16 = "true"
srgb_framebuffer16 = "false"
scale_type_x16 = "viewport"
scale_x16 = "1.000000"
scale_type_y16 = "viewport"
scale_y16 = "1.000000"
shader17 = "shaders_slang/crt/shaders/guest/advanced/deconvergence-ntsc.slang"
filter_linear17 = "true"
wrap_mode17 = "clamp_to_border"
mipmap_input17 = "false"
alias17 = ""
float_framebuffer17 = "false"
srgb_framebuffer17 = "false"
scale_type_x17 = "viewport"
scale_x17 = "1.000000"
scale_type_y17 = "viewport"
scale_y17 = "1.000000"
PR = "0.370000"
PG = "0.400000"
PB = "0.250000"
AS = "0.600000"
sat = "1.000000"
CS = "3.000000"
CP = "4.000000"
TNTC = "1.000000"
LS = "64.000000"
WP = "75.000000"
contr = "-0.500000"
sega_fix = "1.000000"
BP = "22.000000"
vigstr = "0.650000"
vigdef = "0.500000"
quality = "-1.000000"
ntsc_phase = "3.000000"
ntsc_sat = "0.800000"
ntsc_bright = "1.180000"
cust_fringing = "5.000000"
cust_artifacting = "5.000000"
ntsc_sharp = "-10.000000"
blendMode = "0.000000"
CSHARPEN = "5.000000"
CCONTR = "0.250000"
lsmooth = "0.500000"
GAMMA_INPUT = "1.800000"
HSHARPNESS = "2.000000"
SIGMA_HOR = "1.249991"
S_SHARP = "2.000000"
HSHARP = "1.400000"
HARNG = "4.000000"
spike = "1.500000"
SIZEH = "1.000000"
SIGMA_H = "2.500000"
SIZEV = "18.000000"
SIGMA_V = "15.000000"
SIZEHB = "10.000000"
SIGMA_HB = "15.000000"
SIZEVB = "50.000000"
SIGMA_VB = "2.999998"
glow = "-0.100000"
bloom = "-0.050000"
mask_bloom = "2.000000"
halation = "-0.075000"
brightboost = "10.000000"
brightboost1 = "0.250000"
scanline1 = "7.500000"
scanline2 = "0.000000"
beam_min = "0.250000"
beam_max = "3.500000"
beam_size = "1.000000"
vertmask = "0.700000"
scans = "3.350000"
scan_falloff = "0.700000"
scangamma = "0.650001"
rolling_scan = "0.030001"
IOS = "3.000000"
OS = "2.000000"
BLOOM = "10.000000"
warpX = "0.250000"
c_shape = "0.050000"
csize = "0.025000"
bsize1 = "0.060000"
barspeed = "200.000000"
barintensity = "-1.000000"
shadowMask = "7.000000"
maskstr = "1.000000"
mcut = "2.000000"
mshift = "1.500000"
mask_gamma = "3.349999"
slotmask = "0.300000"
slotmask1 = "1.000000"
double_slot = "3.000000"
slotms = "2.000000"
mclip = "1.000000"
dctypey = "0.050000"
deconrg = "-2.500000"
deconrry = "-10.000000"
deconrby = "-4.000000"
decons = "1.200000"
addnoised = "1.000000"
noiseresd = "3.000000"
noisetype = "1.000000"
post_br = "0.860000"
textures = "SamplerLUT1;SamplerLUT2;SamplerLUT3;SamplerLUT4"
SamplerLUT1 = "shaders_slang/crt/shaders/guest/advanced/lut/trinitron-lut.png"
SamplerLUT1_linear = "true"
SamplerLUT1_wrap_mode = "clamp_to_border"
SamplerLUT1_mipmap = "false"
SamplerLUT2 = "shaders_slang/crt/shaders/guest/advanced/lut/inv-trinitron-lut.png"
SamplerLUT2_linear = "true"
SamplerLUT2_wrap_mode = "clamp_to_border"
SamplerLUT2_mipmap = "false"
SamplerLUT3 = "shaders_slang/crt/shaders/guest/advanced/lut/nec-lut.png"
SamplerLUT3_linear = "true"
SamplerLUT3_wrap_mode = "clamp_to_border"
SamplerLUT3_mipmap = "false"
SamplerLUT4 = "shaders_slang/crt/shaders/guest/advanced/lut/ntsc-lut.png"
SamplerLUT4_linear = "true"
SamplerLUT4_wrap_mode = "clamp_to_border"
SamplerLUT4_mipmap = "false"
2 Likes

Megatron NTSC, SDR mode, 300(?) TVL.

8 Likes

Looks really nice and NTSCish! Don’t forget to remind viewers to increase the brightness of their displays for proper viewing. That’s really easy to do when viewing on a cellphone.

1 Like

CyberLab__RGB-Smooth__PVM-Edition__ADV.slangp paired with Duimons work. Bsnes Core.

Here another taken with my phone to maybe show how it looks in Auto HDR in Windows 11 (HDR is hard to showcase, screenshot doesn’t do it justice, it looks really good)

7 Likes

Just “showing off” some of my latest and greatest preset variations in action!

Right click on the image, click Open in New Tab then press F11 for Fullscreen for 4K users. Zoom in until it looks right for 1440p or 1080p users.

CyberLab_NES_Composite_Slot_Mask_IV_OLED_for_Core_Blargg_S-Video_Filter.slangp + Core Blargg S-Video Filter

CyberLab_Turbo_Duo_Composite_Slot_Mask_IV_OLED_for_CyberLab_Blargg_Video_Filter.slangp + Blargg_NTSC_Turbo_Duo_SNES_PSX_Composite_CyberLab_Special_Edition.filt

CyberLab__Ultimate_Virtual_Slot_Mask_IV_OLED_CRT-NP2RTA__ADV.slangp

On another note IrfanView 64 is a real gem of a tool for quickly and easily reducing 4K PNGs to forum size, while disabling chroma subsampling for preserving even more mask quality!

7 Likes

Wow. That’s a big difference!

Does anyone have a working link, or similar with the same quality?

1 Like

You just need to load preset crt-hyllian-sinc-glow (or any other crt-hyllian variant) and set these two parameters:

PHOSPHOR_LAYOT = 22.00
MASK_INTENSITY = 1.0
1 Like

Follow my Samsung QD-OLED investigation over on the Sony Megatron thread:

4 Likes

Virtua Racing slot mask preset, more here:

3 Likes

Right click on the image, click Open in New Tab then press F11 for Fullscreen for 4K users. Zoom in until it looks right for 1440p or 1080p users.

CyberLab__PSX_Composite__ADV.slangp with Mask size changed to 1.

3 Likes

(crt-guest-advanced-fastest)

10 Likes

Right click on the image, click Open in New Tab then press F11 for Fullscreen for 4K users. Zoom in until it looks right for 1440p or 1080p users.

CyberLab Le’Sarsh Composite Presets

CyberLab_Genesis_Composite_Slot_Mask_IV_OLED_for_CyberLab_Blargg_Video_Filter.slangp + Blargg_NTSC_Genesis_Composite_CyberLab_Special_Edition.filt

CyberLab_SNES_Composite_Slot_Mask_IV_OLED_for_BSNES_Blur_Emulation.slangp

CyberLab Le’Sarsh Presets:

CyberLab__Ultimate_Virtual_Slot_Mask_IV_OLED_CRT-NP2RTA__ADV.slangp

CyberLab Le’Sarsh S-Video Presets:

CyberLab_Turbo_Duo_S-Video_Slot_Mask_IV_OLED_for_CyberLab_Blargg_Video_Filter.slangp + Blargg_NTSC_Turbo_Duo_SNES_PSX_S-Video_CyberLab_Special_Edition.filt

Just wanted to say thanks to @guest.r, @HyperspaceMadness, @Dogway, @aliaspider, @Hyllian and all other shader developers who contributed to HSM Mega Bezel Reflection Shader and made this all possible.

4 Likes