Guest thank you from the bottom of my heart !!! I’m on the right track, thanks to your advice I have a light shader capable of smoothing 2D and 3D at native resolution with excellent results. Together with the “Sonkun” version (from which I’m looking for a more vintage style) I’m satisfied. Thanks for your work and your help! In the future when I have adjusted the settings better and tried everything on various platforms I will share the settings.
You can also try raising “post brightness” a bit as well. My presets are bright and vivid because I go crazy on all the different kinds of glow, halation, gamma correction, post brightness but somehow I make it work lol. Later on today I’m gonna see what that new mask glow setting will do, looking forward to it actually.
Greetings @guest.r, just reposting this here because I’m not sure if you saw it since I edited and updated it with descriptive text and other information. Sometimes I post in stages using both my phone and computer and you liked the post before I had completely finished.
New Release Version (2023-02-13-r1):
Notable changes:
- Magic Glow mask strength parameter range enlarged, so mask can reach full strength with at least default Lottes masks.
Download link:
https://mega.nz/file/pppGSRja#2mha4tnO_hbQNpEn03mDwlNiQqcrT_L5eEGWwSBzfz4
That new mask glow setting came in handy, I found a good combination last night and will be releasing a new pack with those new magic glow settings hopefully by later tonight. Also gonna put together a scalefx preset pack I finally figured how to mix that shader in with all my presets. Next update gonna be the cherry on top to my last update.
In layman’s terms, what does Magic Glow do differently from regular glow? Is it that it applies glow exclusively by exciting surrounding “phosphors” as opposed to being independent of phosphors?
Regular glow is nicely implemented, but works quite simple. The most of the glow, which is produced by brighter pixels, is manifested on a very dark background.
Magic glow OTOH has very good control variables for how glow is distributed regarding pixel brightness. You can disable glow of less bright pixels and determine mask application on glow.
Last but not least there is a mechanism which distributes glow in a smart manner. Without it widespread glow would look quite annoying.
I’ll also mention that one can do even better normal glow with “magic glow” by tweaking the parameters.
You can also use it as a nice brightness and contrast enhancer and as a mask mitigation functionality.
One of my fauvorites is also wide glow with some mask mitigation, which makes large bullets, explosions, etc. do the blooming. Previously such effect weren’t possible without external shaders.
So magic glow is a replacement for the old glow, or is that still available? Also, the HD version won’t get it?
Old glow mode is still available and is the dafault one. Need to switch to magic glow with a parameter setting in order to use it.
It’s tricky with the HD version, since i would need to add two extra shader passes. Haven’t really made this decision yet.
Good evening Guest, I need a little tutorial please: under the “interlacing option” category there is the “internal resolution” item, how exactly does it work?
Nice. Can you share the settings for these?
If you run higher resolution content, you might want to have ordinary “lores” scanlines. Some emulators work with increased internal resolution and you can set the “internal resolution” parameter to match.
Sure. NTSC preset is to be used, here are the parameters for the newest version in this thread:
wp_saturation = "1.250000"
ntsc_scale = "1.999999"
m_glow = "1.000000"
m_glow_cutoff = "0.150000"
m_glow_low = "0.600000"
m_glow_high = "4.100001"
m_glow_dist = "0.500000"
m_glow_mask = "0.775000"
SIGMA_H = "0.700000"
SIGMA_V = "0.700000"
glow = "0.600000"
bloom = "0.250000"
halation = "0.200000"
gamma_c = "1.300000"
brightboost = "1.600000"
brightboost1 = "1.000000"
warpX = "0.040000"
warpY = "0.050000"
csize = "0.080000"
bsize1 = "0.090000"
shadowMask = "10.000000"
maskstr = "1.000000"
maskboost = "1.200000"
mshift = "2.500000"
slotwidth = "3.000000"
double_slot = "2.000000"
mclip = "0.750000"
smoothmask = "1.000000"
deconrr = "1.000000"
deconrb = "-1.000000"
deconrry = "1.000000"
deconrby = "-1.000000"
decons = "1.500000"
addnoised = "-0.240000"
With the “Magic Glow mask strength” parameter you can really scale down bloom, you could even turn it off with a bright monitor. Here’s what I achieved with a quick experiment.
#reference ":/shaders/shaders_slang/crt/crt-guest-advanced-ntsc.slangp"
WP = "-20.000000"
S_SHARP = "1.000000"
HSHARP = "2.000000"
m_glow = "1.000000"
m_glow_dist = "0.800000"
m_glow_mask = "0.800000"
SIGMA_VB = "0.750000"
glow = "0.200000"
bloom = "-0.200000"
halation = "0.100000"
warpX = "0.030000"
warpY = "0.040000"
csize = "0.010000"
bsize1 = "0.100000"
shadowMask = "11.000000"
maskstr = "1.000000"
slotmask = "1.000000"
slotmask1 = "1.000000"
slotwidth = "4.000000"
double_slot = "2.000000"
smoothmask = "1.000000"
post_br = "1.100000"
New Release Version (2023-02-16-r1):
Notable changes:
- Magic Glow wide glow improvements. The overall image is cleaner and less de-saturated. Existing presets which use magic glow for better contrast (lower sigma values) shouldn’t be affected.
Download link:
https://mega.nz/file/B8hxmLJS#ZJSSa39CEdFJHPzlmLL740xjxf2KPw5D0vNZZ4PyDdU
Glad I caught this before anything, I plan on putting my new pack out today. I don’t think this update will change anything (I got the magic glow sigmas turned all the way down) but I’ll take a look at it anyway. Thanks again for keeping this shader fresh.
Currently playing around with setting by stupidly high values just to understand how they affect an image. And the new Magic Glow effect is just wonderful. Tried to capture in small sized images, but the effect is a bit subtle. One has to play the games in motion and full sized picture to see it’s full potential. Here are comparison between Magic Glow on and off for the crt-guest-advanced.slangp: That’s the only change, just enable vs disable.
m_glow = "1.000000"
Panzer Dragoon Saga on Saturn (crop from 1440p):
Sengoku Blade on Saturn (crop from 1440p):
Hey @guest.r I’m trying to create my first Shadow Mask preset, I tweaked these settings here but would like your opinion. Is this a accurate representation of RGB Shadow Mask with these settings for 1080p?
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/grade/pre-shaders-afterglow-grade.slang"
filter_linear3 = "true"
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"
g_signal_type = "0.000000"
g_crtgamut = "0.000000"
g_vignette = "0.000000"
g_cntrst = "-0.500000"
g_lift = "-0.050000"
m_glow = "1.000000"
m_glow_cutoff = "0.010000"
m_glow_low = "1.000000"
m_glow_high = "1.000000"
m_glow_mask = "0.900000"
SIGMA_H = "0.200000"
SIGMA_V = "0.200000"
SIGMA_HB = "0.250000"
SIGMA_VB = "0.250000"
glow = "0.400000"
bloom = "-0.800000"
bloom_dist = "1.000000"
halation = "-0.075000"
gamma_c = "1.599999"
brightboost = "1.000000"
brightboost1 = "1.000000"
gsl = "2.000000"
scanline1 = "20.000000"
scanline2 = "20.000000"
beam_min = "1.000000"
beam_size = "0.000000"
scans = "0.200000"
scan_falloff = "0.650000"
spike = "1.500000"
scangamma = "7.000000"
h_sharp = "10.999985"
s_sharp = "1.000000"
smart_ei = "0.020000"
sth = "0.000000"
warpX = "0.050000"
warpY = "0.070000"
csize = "0.040000"
shadowMask = "6.000000"
maskstr = "1.000000"
masksize = "2.000000"
mshift = "-4.000000"
mask_gamma = "1.800001"
smoothmask = "1.000000"
deconrry = "1.000000"
deconrby = "-1.000000"
post_br = "1.130000"
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"
I’m using mask 6, mask size 2 and mask stagger -4
I’m also using the pics here as a reference.
I’ve been away for quite awhile. This “magic glow” peaks my interest.
Magic glow is the best thing invented after bread and butter. Awesome stuff, I love it when bullets and explosions get all glowy
It’s a fun fact that mask shift/stagger likes “even wide” masks a bit better. Mask size of 2.0 makes all masks even width though.
You should definitely try mask 10 (width 4.0) with shift of 2.0 or 2.5 also. 10.0 / 2.0 should be very nice for 1080p.