New CRT shader from Guest + CRT Guest Advanced updates

Oh yeah right away I noticed an improvement. Those large lines are barely noticeable now with this update. I do notice with this update though that even though those lines aren’t as dominant, I now see them very lighty even on black screens (I only test Sonic 2 when I noticed that).

See example here (it may not be noticable from.the screenshot):

That pic was taken with the setting at 0.25, at 0.05 it’s not as pronounced but still there if you look good enough.

No color beam setting:

Color beam enabled:

Took those shots on a whim since I was on the way out so I can’t test it more til later.

I also notice the setting activates soon as you change it to 0.05 now instead of 0.25. Thank you for this fix.

5 Likes

New Release Version (2023-08-19-r1):

Notable changes:

  • “Clip Saturated Color Beams” effect small tweak.
  • New ‘negative’ mask bloom implementation.
  • New feature: “Smart Sharpen Scanlines”. It’s nice for slotmask and shadowmask setups where you can have mild (blurry) scanlines and overall sharper appearance.
  • Edit: oopsie fixed (thanks @bactino)

Download link:

https://mega.nz/file/wkwTFYjI#GyEoNPFgaJoFb9_ydgua_BpGlIJ3PGgGsuuSHZIxev4

17 Likes

hello does not work on sonkun shaders

2 Likes

I had a whole new sample pack ready to post up from yesterday’s update and now I see this brand spanking new update lol. Good thing I checked here first, guess I’ll hold off posting that and check this update out first when I get home later. Curious about that new smart sharpen scanlines setting.

2 Likes

Here is an example of the new scanline sharpen feature:

Slot mask:

Shadow mask:

Previously, it wasn’t possible to have a sharper contrast on edges while having less pronounced scanlines.

9 Likes

I’m going to try it right now :smiley:

2 Likes

Fantastic!!! :grin:

Only a stupid question @guest.r… I never thought about it, do I have to set aspect ratio to 4:3 or core provided on your shaders? I think for me looks better with 4:3 but I’m not sure… :thinking:

4 Likes

Core provided should be mostly fine for all cases. If you play horizontal games only then 4:3 is also acceptable, maybe not for PPSSPP etc.

Personally, I use core provided.

4 Likes

Ok, thanks! I think I’m going to leave it on core provided then. I think I had something miss aligned before, now looks way better :grin:.

3 Likes

So is this new feature more or less designed to work with set ups that use thinner scanlines?

3 Likes

Yes. It makes no sense if your “Scanline Beam Shape Edges” value is already much increased. Aperture setups can pass without it more or less too.

But it’s also great for curvature presets, since pronounced scanlines tend to produce much more moire.

2 Likes

Ah ok. I was gonna say this new feature my not apply to my presets until you said

Anything to help reduce moire is a friend of mines. Depending on how strong the effect is I may end up cranking that setting to the max if it’ll help reduce moire lol.

1 Like

RGB

BGR

RGB with GLOW

BGR with GLOW

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"
SIZEHB = "1.000000"
SIGMA_HB = "0.050000"
SIZEVB = "1.000000"
SIGMA_VB = "0.050000"
bloom = "0.030000"
halation = "0.075000"
hmask1 = "0.000000"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "-1.000000"
scanline1 = "70.000000"
scanline2 = "70.000000"
beam_min = "0.800000"
beam_max = "0.825000"
beam_size = "0.000000"
scans = "0.000000"
scan_falloff = "0.100000"
spike = "2.000000"
scangamma = "5.000000"
h_sharp = "4.900000"
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"
masksize = "2.000000"
maskDark = "0.000000"
maskLight = "1.000000"
mask_gamma = "4.450000"
post_br = "1.700000"
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"
7 Likes

For the most part (unless you use shader specific scaling or cropping options) this is a core issue. Most of the time core provided is likely correct and is the same or close to 4:3 once borders are included, but sometimes you have to manually correct it and use a custom aspect for some cores/games to be accurate. For example the MSX cores, or PC (DOS) games which originated from other platforms.

3 Likes

Very nice! Very advanced tweaking strategy too… :smiley:

3 Likes

New Release Version (2023-08-21-r1):

Notable changes:

  • “Clip Saturated Color Beams” effect small tweak.
  • ‘Negative’ mask bloom implementation improvement.
  • Edit: small update

Download link:

https://mega.nz/file/gg5GgarK#L6eHasLkZICrXLbH0y1nddWQpyoQwaNfgIdPPx1vZwQ

13 Likes

Guy rarely posts but whenever he does it’s always magical. Definitely a fan of his tweaks

2 Likes

Yeah, you should check the newest one definitely. :grinning:

Just a reminder, there was a small update.

2 Likes

I’m on it soon as I get home lol

2 Likes

Thanks, I appreciate it! :stuck_out_tongue:

2 Likes