New CRT shader from Guest + CRT Guest Advanced updates

I’m not sure if I’d want to go any further than that lol. So far I’ve been testing out @ProfessorBraun’s scanline settings while giving it the sonkun twist and I’m liking what I see, might just end up putting a update out using them, I like how the scanlines have a little more volume. Still doing a little more experimenting.

4 Likes

Yeah, was just stating it for the record since I encountered a situation where coming from the old Scanline Gamma Offset parameter, after applying the formula to convert the values to the new Scanline Gamma setting I found that settings ended up outside of the maximum range in the menu sometimes even though they were within the menu range when using Scanline Gamma Offset.

I used this to eliminate the last hints of moire from my @soqueroeu -TV Backgrounds CyberLab Special Edition presets.

1 Like

Maybe I’ll try that out later then. What number did you end up choosing to help eliminate the moire?

1 Like

In that particular case, using those particular Mask, Scanline and other Settings, I ended up using a value of 6 after conversion from Scanline Gamma Offset but you should use as much as you need for any particular case.

I used Mike Tyson Punch Out for much of that round of testing and I also made use of the Scanline Falloff setting.

What I’ve recently learned is that an easy way to reduce or prevent moire artifacts is to use Mask Type and Size settings that generate an appropriate TVL for the amount of available pixels available in the viewport.

So, that might mean increasing TVL from the current settings that are displaying the issue by using settings that produce finer Mask Details. This seems to work wonders and it’s what I use in my CyberLab FRS-Mini TV presets where I use 1080p Optimized Mask settings at 4K screen resolution because the effective resolution due to the smaller viewport would in fact be closer to 1080p than 4K.

Normally when using a higher TVL preset at a higher resolution and leaving all other settings equal, I’ve noticed a softening of the output. In my upcoming presets, I intend to address that using tweaked sharpness settings. So having multiple groups of presets has helped me because I didn’t have to make new presets in order to get the More to go away, I just had to tap into and repurpose another folder of presets which I already had available in a sort of modular approach. The same goes for my “Le’Sarsh” 4K_Optimized Presets. Believe it or not, they are identical to my 1440p Optimized presets.

They may not remain that way in the future though as I intend to further optimize them by increasing sharpness at some point.

1 Like

This information made a nice difference, I noticed a decrease in moire by raising it up to 6, haven’t tried higher numbers yet. I use certain games to test certain things myself plus I also have to see if one setting looks good on both warm and cool white point temperature settings.

I gotta check out some of your presets, I’ve seen some of them but not all of them, it’s always nice learning new things from other users that can help with their own presets.

3 Likes

No problem man. I’m glad I can share what I’ve picked up and observed at times, especially when it might be relevant.

I used to dable in these settings much more with my older aperture grill presets. I think I’m going to do some experimentation with at least the Scanline Falloff and Mask Falloff with my new ones now that I have a much better understanding of what they’re for and how they work.

Of course. Plus there’s a lot of useful information buried in time in these forums as well. It’s nice to bring some of these discussions and tips back to the forefront where they belong.

3 Likes

With curved presets you can also try to decrease the slotmask strengths a bit, see if it helps against moire. Anyway, i would avoid a narrow scanline - full slotmask strenght combo even without curvature. Ofc. there is more free room with 4k setups.

6 Likes

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"
GAMMA_INPUT = "2.500000"
SIZEHB = "0.000000"
SIGMA_HB = "0.050000"
SIZEVB = "1.000000"
SIGMA_VB = "0.050000"
glow = "0.020000"
bloom = "0.250000"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "2.000000"
scanline1 = "70.000000"
scanline2 = "70.000000"
beam_min = "0.350000"
beam_max = "0.800000"
beam_size = "1.000000"
scan_falloff = "0.200000"
spike = "2.000000"
scangamma = "5.000000"
ei_limit = "0.000000"
sth = "0.000000"
c_shape = "0.050000"
bsize1 = "0.000000"
sborder = "0.250000"
shadowMask = "2.000000"
maskstr = "1.000000"
mcut = "2.000000"
maskDark = "0.000000"
maskLight = "1.000000"
mask_gamma = "2.500000"
slotwidth = "3.000000"
double_slot = "2.000000"
gamma_out = "2.200000"
deconrr = "-1.000000"
deconrb = "1.000000"
deconrry = "-1.000000"
deconrby = "1.000000"
post_br = "1.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"

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"
GAMMA_INPUT = "2.500000"
SIZEHB = "0.000000"
SIGMA_HB = "0.050000"
SIZEVB = "1.000000"
SIGMA_VB = "0.050000"
glow = "0.020000"
bloom = "0.250000"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "-1.000000"
scanline1 = "70.000000"
scanline2 = "63.000000"
beam_min = "0.850000"
beam_max = "0.850000"
beam_size = "0.000000"
scangamma = "5.000000"
ei_limit = "0.000000"
sth = "0.000000"
c_shape = "0.050000"
bsize1 = "0.000000"
sborder = "0.250000"
shadowMask = "2.000000"
maskstr = "1.000000"
mcut = "2.000000"
maskDark = "0.000000"
maskLight = "1.000000"
mask_gamma = "2.500000"
slotwidth = "3.000000"
double_slot = "2.000000"
gamma_out = "2.200000"
deconrr = "-1.000000"
deconrb = "1.000000"
deconrry = "-1.000000"
deconrby = "1.000000"
post_br = "1.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"

Edit: wrong copy paste and afterglow restored.

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"
quality = "-1.000000"
ntsc_fields = "1.000000"
ntsc_phase = "2.000000"
ntsc_ring = "1.000000"
ntsc_sharp = "-10.000000"
ntsc_shape = "1.000000"
CCONTR = "0.000000"
CDETAILS = "0.000000"
GAMMA_INPUT = "2.500000"
interm = "0.000000"
HSHARPNESS = "1.000000"
SIGMA_HOR = "0.100000"
S_SHARP = "0.000000"
HSHARP = "0.000000"
HARNG = "0.000000"
spike = "2.000000"
SIZEHB = "0.000000"
SIGMA_HB = "0.040000"
SIZEVB = "1.000000"
SIGMA_VB = "0.040000"
glow = "0.020000"
bloom = "0.250000"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "-1.000000"
scanline1 = "70.000000"
scanline2 = "63.000000"
beam_min = "0.850000"
beam_max = "0.850000"
beam_size = "0.000000"
scangamma = "5.000000"
bsize1 = "0.000000"
shadowMask = "2.000000"
maskstr = "1.000000"
mcut = "2.000000"
masksize = "2.000000"
maskDark = "0.000000"
maskLight = "1.000000"
mask_gamma = "2.500000"
slotwidth = "6.000000"
double_slot = "2.000000"
gamma_out = "2.200000"
deconrr = "1.000000"
deconrb = "-1.000000"
deconrry = "1.000000"
deconrby = "-1.000000"
post_br = "1.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"
6 Likes

Yeah that was a possibility I was looking into, it’s either that, get rid of curvature altogether or just accept a little moire. I just have to accept it since I have all my cores/games set up using bezels/overlays from the Bezel Project plus I like the look of full Slot Mask.

In any case I’ve been cooking up in the shader lab and have made some progress, check it out.

Here’s my current rgb warm preset from the shader pack:

Here’s what I’ve got so far:

Same thing with rgb cool settings from the current shader pack:

And here’s what I got now so far:

Scanlines look a little more pronounced now I think, I also cranked the “crt mask boost” up to 2.00 messing around but that will end up being changed later.

Edit: few more pics after some more tweaking:

7 Likes

If you are after a more coarse mask look, you can also try to lower mask gamma. High mask boost values can also produce an overly bright image and clipping, especially with mask mitigation techniques. Mask gamma support for ordinary bloom is only available since the latest version though.

2 Likes

Haha the man himself sees my game plan, yes I’m going for the coarser mask look, always have been since the start, that look is the sexiest right there and I think I can finally achieve it with minimum moire this time around. Those first 4 pics I posted up there from mvsf are already obsolete to me, those Metal Sonic pics is the look I plan to put out in the next update.

Funny you mention the mask gamma setting as I still haven’t really touched it yet, since those mvsf pics I posted I lowered the crt mask boost to 1.40, at 2.00 or higher it was starting to produce this weird subtle greenish tint on the image. I also lowered the bright scanline setting from 1.00 to 0.90. Later on tonight I’ll play around with the new mask gamma setting you implemented in your latest update and see where that takes me. Hopefully I can put the finishing touches on these presets by tonight and get them ready for release as I really like how my presets are looking right now.

3 Likes

Meanwhile i’m playing around with the “Magic Glow” a bit. I guess it can never look right lol, but i could still implement it since the performance hit is very small.

9 Likes

What’s this Magic Glow? Sounds interesting.

3 Likes

It’s an adaptation of the Reshade version of Magic Bloom. It’s doable without a notable performance hit, but the user shoud select if he wants ordinary glow or “magic glow”.

The catch is that glow passes alow a very large effect radius and are outputing to 800x600, so i can make good use of it effect and performance wise.

6 Likes

Nice. I’ve heard Magic Bloom was good, never used it before but having a another new way to illuminate the image sounds fun, might be one of the ingredients needed to give a nice magic touch to our presets.

4 Likes

Oh wow! You’re making my day! :star_struck:

5 Likes

New Release Version (2023-01-31-r1):

Notable changes:

  • initial Magic Glow implementation (standard and ntsc versions)

Usage:

  • select Magic Glow mode within the glow pass parameters
  • increase filter range and sigma
  • effect strength is controlled with the same glow parameter as ordinary glow

Download link:

https://mega.nz/file/11QzUbaA#f5OjdPHKEAjViZzzkUGU20vJQ6BFVsdmJukyaSWdnwk

11 Likes

Damn didn’t think it was arriving this fast lol. I can’t wait to get home and play with this.

5 Likes

Quite a different beast.

You really have to increase sigma, otherwise you won’t even notice the glow. Comparing it to the regular glow it seems to brighten up the image a little more, so it could be used in combination with bloom reduction.

Like, I’m using mask 11 now, and -0,40 for bloom is nice; with magic glow you could use -0,30, maybe even -0,20 (sigma at 3, like). Getting bloom as low as possibile a nice thing, because the amount we use is not something you see on a CRT.

4 Likes

Magic Glow isn’t implemented in the hd version? I don’t see it anywhere in the settings. I see it in the standard and ntsc versions though.

Edit: I see you wrote in the post that it’s just for those two versions. I was in a rush to download it, well damn lol.