New CRT shader from Guest + CRT Guest Advanced updates

Ok thanks for the clarification. Regards

1 Like

@guest.r Just a quick message to notify you that cmask = min(cmask, 1.0); is missing from deconvergence-ntsc.slang. It will fix mask boost, now I can use same settings between normal and ntsc presets.

Normal guest

Ntsc preset with same values

6 Likes

Hey there. Dunno if it’s on purpose, but probably not. :grin: I’m fixing some more stuff and will probably include the mask fix in next release. Thanks again for the “find”.

5 Likes

New Release Version (2023-10-24-r1):

Notable changes:

  • Mask clamping fixed in non-standard verisons.
  • New scanline saturation implementation with a nice performance bump.

Download link:

https://mega.nz/file/8hpiXLxJ#qslf9b6FrjD7p0rdlW6tRLFFI14x87UDc8wkKX4m7k0

16 Likes

Nice. Was hoping you had included the last upgraded grade shader that Dogway put out but it’s not a big deal, forgot what was even upgraded there.

1 Like

Yeah, sorry i forgot about it. I think i’m going to make another update next week which will include the newest grade version plus some stuff, if anything else comes to my mind.

4 Likes

It’s all good no worries. Currently your shader is in top form to me since you added those base mask and clip saturation settings, I feel spoiled almost at this point lol. I’ll be on the look though and thank you as always.

3 Likes

Small problem, when trying to change these parameters straight in Retroarch they are not called the same so I cant find them. Is there a way to map these to what are called in the shader options meny?

bloom = "0.450000"
mask_bloom = "0.150000"
bloom_dist = "1.849999"
halation = "-0.250000"
gamma_c = "1.325000"
gsl = "-1.000000"
scanline1 = "2.000000"
scanline2 = "20.000000"
beam_min = "5.500003"
scans = "1.250000"
scan_falloff = "0.300000"
shadowMask = "10.000000"
maskstr = "1.000000"
maskboost = "1.400000"
masksize = "2.000000"
mshift = "4.000000"
smoothmask = "1.000000"
deconrr = "1.000000"
deconrb = "-1.000000"
deconrry = "1.000000"
deconrby = "-1.000000"
1 Like

Hi @guest.r , I noticed that negative value ​​for scanlines saturation give the same effect as positive value.

Something else completely unrelated but I wanted to keep the effect of halation while limiting its visibility vertically.

So I modified —>

Bloom = mix(0.5*(Bloom + BloomBloom), 0.75*BloomBloom, colmx);

in deconvergence.slang by 0.0 and 0.25 respectively. While keeping in mind that the base values ​​are correct and let’s say a preset has a brightness calibration of (240,232,224) for example, with bad values ​​you will end up with (240,229,221) or else, which will require adjusting your preset. I wanted to share this tip before I forget haha, this is what I did on a few of my presets so I could test and I like the result :smiling_face_with_three_hearts:

https://i.ibb.co/VH342Yb/1.png

https://i.ibb.co/J5b3XFv/2.png

Other masks

https://i.ibb.co/BCV0tz4/3.png

https://i.ibb.co/CPQwN3X/4.png

Downsampling

https://i.ibb.co/wKC225P/5.png

https://i.ibb.co/n6Djp19/6.png

4 Likes

Wow your Shadow Mask looks sexy. I’m tempted to ask you what settings you used there lol

2 Likes

Yes, that’s to maintain compatibility with older presets which could have negative values present. Without this tweak they would become unpredictable. Still dunno if a new alternate mode is needed.

1 Like

Thanks ! That’s what I am using with p-uae with automatic crop and games with even integer (ex: 200 x 10).

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 = "source"
scale_x6 = "1.000000"
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 = "source"
scale_x7 = "1.000000"
scale_type_y7 = "source"
scale_y7 = "1.000000"
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 = "source"
scale_x8 = "1.000000"
scale_type_y8 = "source"
scale_y8 = "1.000000"
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"
AS = "0.000000"
GAMMA_INPUT = "2.500000"
gamma_out = "2.200000"
interm = "0.000000"
m_glow = "1.000000"
m_glow_cutoff = "0.000000"
m_glow_low = "0.500000"
m_glow_high = "0.000000"
m_glow_mask = "0.000000"
SIZEH = "8.000000"
SIGMA_H = "2.400000"
SIGMA_V = "0.900000"
SIZEHB = "1.000000"
SIGMA_HB = "0.050000"
SIZEVB = "1.000000"
SIGMA_VB = "0.050000"
glow = "0.010000"
bloom = "-2.000000"
halation = "0.200000"
bmask1 = "0.700000"
hmask1 = "0.000000"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "2.000000"
scanline1 = "20.000000"
scanline2 = "20.000000"
beam_min = "1.700000"
beam_max = "1.700000"
beam_size = "0.000000"
scan_falloff = "0.100000"
spike = "0.000000"
scangamma = "5.000000"
h_sharp = "3.300000"
s_sharp = "0.000000"
ei_limit = "0.000000"
sth = "0.000000"
c_shape = "0.050000"
bsize1 = "0.000000"
sborder = "0.250000"
shadowMask = "4.000000"
maskstr = "1.000000"
mcut = "2.000000"
maskboost = "3.000000"
maskDark = "0.000000"
maskLight = "2.000000"
mask_gamma = "5.000000"
post_br = "1.280000"
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"

For other systems I’m using default glow radius and sigma because of the source scale type in my passes (amiga resolution), and default horizontal sharpness. While keeping same settings for everything else.

I use the defaults (0.50) ​​and I am satisfied with the result. :sunglasses:

2 Likes

Im totally lost im sorry.

If I wanna use examples posted here, how do I actually do it?

These are to go into HD-preset:

bloom = "0.450000"
mask_bloom = "0.150000"
bloom_dist = "1.849999"
halation = "-0.250000"
gamma_c = "1.325000"
gsl = "-1.000000"
scanline1 = "2.000000"
scanline2 = "20.000000"
beam_min = "5.500003"
scans = "1.250000"
scan_falloff = "0.300000"
shadowMask = "10.000000"
maskstr = "1.000000"
maskboost = "1.400000"
masksize = "2.000000"
mshift = "4.000000"
smoothmask = "1.000000"
deconrr = "1.000000"
deconrb = "-1.000000"
deconrry = "1.000000"
deconrby = "-1.000000"

Here is HD preset I loaded and changed some parameters and then saved as a new preset:

shaders = "12"
shader0 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/linearize-hd.slang"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = "LinearizePass"
float_framebuffer4 = "true"
srgb_framebuffer4 = "false"
scale_type_x4 = "source"
scale_x4 = "1.000000"
scale_type_y4 = "source"
scale_y4 = "1.000000"
shader5 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/crt-guest-advanced-hd-pass1.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = "Pass1"
float_framebuffer5 = "true"
srgb_framebuffer5 = "false"
scale_type_x5 = "viewport"
scale_x5 = "1.000000"
scale_type_y5 = "source"
scale_y5 = "1.000000"
shader6 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "source"
scale_y8 = "1.000000"
shader9 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/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 = "absolute"
scale_y9 = "600"
shader10 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/crt-guest-advanced-hd-pass2.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 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/hd/deconvergence-hd.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"
wp_saturation = "0.900000"
pre_bb = "0.950000"
textures = "SamplerLUT1;SamplerLUT2;SamplerLUT3;SamplerLUT4"
SamplerLUT1 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/advanced/lut/trinitron-lut.png"
SamplerLUT1_linear = "true"
SamplerLUT1_wrap_mode = "clamp_to_border"
SamplerLUT1_mipmap = "false"
SamplerLUT2 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/advanced/lut/inv-trinitron-lut.png"
SamplerLUT2_linear = "true"
SamplerLUT2_wrap_mode = "clamp_to_border"
SamplerLUT2_mipmap = "false"
SamplerLUT3 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/advanced/lut/nec-lut.png"
SamplerLUT3_linear = "true"
SamplerLUT3_wrap_mode = "clamp_to_border"
SamplerLUT3_mipmap = "false"
SamplerLUT4 = "crt-guest-advanced-2023-10-24-release1/shaders/guest/advanced/lut/ntsc-lut.png"
SamplerLUT4_linear = "true"
SamplerLUT4_wrap_mode = "clamp_to_border"
SamplerLUT4_mipmap = "false"

Where do I actually put the parameters? Just before “textures” where I can see my changes that I made?

Nice and you’re welcome. I see you used mask 4 as well. I mimicked your settings but with mask 6:

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 = "source"
scale_x6 = "1.000000"
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 = "source"
scale_x7 = "1.000000"
scale_type_y7 = "source"
scale_y7 = "1.000000"
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 = "source"
scale_x8 = "1.000000"
scale_type_y8 = "source"
scale_y8 = "1.000000"
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"
AS = "0.000000"
GAMMA_INPUT = "2.500000"
gamma_out = "2.200000"
interm = "0.000000"
m_glow = "1.000000"
m_glow_cutoff = "0.000000"
m_glow_low = "0.500000"
m_glow_high = "0.000000"
m_glow_mask = "0.000000"
SIZEH = "8.000000"
SIGMA_H = "2.400000"
SIGMA_V = "0.900000"
SIZEHB = "1.000000"
SIGMA_HB = "0.050000"
SIZEVB = "1.000000"
SIGMA_VB = "0.050000"
glow = "0.010000"
bloom = "-2.000000"
halation = "0.200000"
bmask1 = "0.700000"
hmask1 = "0.000000"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "2.000000"
scanline1 = "20.000000"
scanline2 = "20.000000"
beam_min = "1.700000"
beam_max = "1.700000"
beam_size = "0.000000"
scan_falloff = "0.100000"
spike = "0.000000"
scangamma = "5.000000"
h_sharp = "3.300000"
s_sharp = "0.000000"
ei_limit = "0.000000"
sth = "0.000000"
c_shape = "0.050000"
bsize1 = "0.000000"
sborder = "0.250000"
shadowMask = "6.000000"
maskstr = "1.000000"
mcut = "2.000000"
maskboost = "3.000000"
masksize = "2.000000"
mshift = "1.000000"
maskDark = "0.000000"
maskLight = "2.000000"
mask_gamma = "5.000000"
post_br = "1.280000"
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"
3 Likes

Yes, you just copy/paste them there. Once you get the know-how of it, it gets very easy.

1 Like

I improved my preset using the tip posted above (deconvergence.slang discussion), I finally got the look I was trying to achieve. I don’t think I can do better and I’m happy with the results so this will be the last preset I make. :computer_mouse: :bed:

shaders = "12"
shader0 = "../shaders/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/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/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/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/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/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/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 = "source"
scale_x6 = "1.000000"
scale_type_y6 = "source"
scale_y6 = "1.000000"
shader7 = "../shaders/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 = "source"
scale_x7 = "1.000000"
scale_type_y7 = "source"
scale_y7 = "1.000000"
shader8 = "../shaders/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 = "source"
scale_x8 = "1.000000"
scale_type_y8 = "source"
scale_y8 = "1.000000"
shader9 = "../shaders/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/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/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"
AS = "0.000000"
GAMMA_INPUT = "2.500000"
gamma_out = "2.200000"
interm = "0.000000"
m_glow = "1.000000"
m_glow_cutoff = "0.000000"
m_glow_low = "0.500000"
m_glow_high = "0.000000"
m_glow_mask = "0.000000"
SIZEHB = "1.000000"
SIGMA_HB = "0.050000"
SIZEVB = "1.000000"
SIGMA_VB = "0.050000"
glow = "0.010000"
bloom = "-1.800000"
halation = "0.275000"
bmask1 = "0.600000"
hmask1 = "0.000000"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "2.000000"
scanline1 = "20.000000"
scanline2 = "20.000000"
beam_min = "1.650000"
beam_max = "1.650000"
beam_size = "0.000000"
scan_falloff = "0.100000"
spike = "0.000000"
scangamma = "5.000000"
s_sharp = "0.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"
maskboost = "3.000000"
masksize = "2.000000"
maskDark = "0.000000"
maskLight = "2.000000"
mask_gamma = "5.000000"
post_br = "1.140000"
textures = "SamplerLUT1;SamplerLUT2;SamplerLUT3;SamplerLUT4"
SamplerLUT1 = "../shaders/shaders_slang/crt/shaders/guest/advanced/lut/trinitron-lut.png"
SamplerLUT1_linear = "true"
SamplerLUT1_wrap_mode = "clamp_to_border"
SamplerLUT1_mipmap = "false"
SamplerLUT2 = "../shaders/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/shaders_slang/crt/shaders/guest/advanced/lut/nec-lut.png"
SamplerLUT3_linear = "true"
SamplerLUT3_wrap_mode = "clamp_to_border"
SamplerLUT3_mipmap = "false"
SamplerLUT4 = "../shaders/shaders_slang/crt/shaders/guest/advanced/lut/ntsc-lut.png"
SamplerLUT4_linear = "true"
SamplerLUT4_wrap_mode = "clamp_to_border"
SamplerLUT4_mipmap = "false"
5 Likes

//Edit

Ok I got it to work now. I did everything from this laptop this time, maybe some part of the chain to get it from my mobile device ended up damaging the files somehow.

It works on this PC in Retroarch, so Im gonna try and get it to the mobile and then start to tune it.

Thanks a bunch!

2 Likes

Ok the edited shaders work fine on PC, but they do not work on my Odin.

The AYN Odin is an android based device. All released shaders work, but these edited ones do not. It really looks like it is Retroarch for Android that is the problem.

So back to square one. Is there a way to find out what these settings are named in the menu? Because I can edit shader parameters in the shader menu.

1 Like

Just edit some parameters on Odin and save the preset. Then replace the parameter section with the parameters you want to replace honoring the spacing and placing.

You can also study logs if they tell the type of error you are getting.

Otherwise it sounds like community presets aren’t working on Android which would be really annoying. But there aren’t other reports about this special issue.

You are also able to open the shade files (like in shaders/guest/advanced…) and study the parameter connection there. Currently i’m not planning to include the parameter names in menu entries, maybe some day in the documentation when it’s ready.

1 Like

New Release Version (2023-10-28-r1):

Notable changes:

  • Grade “replacement” shader updated to the newest repo grade version.
  • New “Lite” version added (caa. 25% faster than standard version).
  • It handles scanlines and filtering differently, non-essential options are removed.
  • TATE mode is supported.
  • Very nice for games with more basic graphics (NES, PC-Engine…).

Download link:

https://mega.nz/file/ZoQhQbpT#SortjJdoRr0JfE2inny66j4DZ04LjEkbkfDmnhy1JwM

13 Likes