Rainbow banding with composite video - Presets for Sega Genesis Games

Well, I think @hunterk already mentioned how it could be done at least twice in this thread.

Perhaps @HyperspaceMadness, @guest.r or @DariusG can further break it down in layman’s terms and maybe walk us through the process using existing shaders that we might be more familiar with for example, HSM MegaBezel, CRT-Guest-Advance or GDV-Mini?

1 Like

rainbow sega v6.4. Thanks to Hunterk for his ntsc adaptive suggestion:

Don’t know Genesis model here but source is:

Real hardware Sega Genesis Sonic 1 connected with RF vs Genesis Plus GX rainbow sega v6.4

GPGX with borders set to full (and it should fit as well with BlastEm core).

3 Likes

How did you integrate it? Can you give a summary of the steps?

Why are you using RF mode for comparison? Would you also get the effect with less blur using Composite instead?

its just the ntsc-adaptive preset combined with the suggestion from hunterk:

Rainbow with composite - MOD preset for Sega Genesis Games - RetroArch Additions / Shaders - Libretro Forums

1 Like

I tried messing around with this again and yeah pretty much changing the NTSC Preset parameter to 2 (RF) in my shader preset is the closest I believe I can get to getting the rainbow affect. If I’m not mistaken pretty much all Model 1 Sega Genesis and the other 8/16 bit systems came boxed in with a RF cable in the late 80s/early 90s, at least in the US

2 Likes

i know how it feels. At least I have only experience with NES console (which still do have) that has RF cable.

The result from streets of rage 2 is very similar to this: NTSC Shaders for SEGA Mega Drive / Genesis - RetroArch Additions / Shaders - Libretro Forums

2 Likes

Yeah I see what you mean, you’re talking about his “themaister’s NTSC 2-phase composite shader” pic. The difference between mines and his that he’s using the composite signal and I’m using the RF signal. My 8/16 bit shader preset came defaulted on the auto setting which always ends up choosing the composite signal, I may change it to RF on my next shader update.

I been using that RF signal since I came to this thread and I’ve come to like it more than composite. Some may say it looks inferior cause of lower image quality but I like how the screen becomes more “alive” with the different artifacts shaking and moving about, plus RF is the cable those systems came boxed in with so it gives you a more pure original experience.

3 Likes

IMHO, CRT stuff looks weird without movement/artifacts, it comes off as too sterile.

3 Likes

I’ve been getting this “Failed to apply shader preset: rainbow sega v6.4.slangp” message every time I load it. Removing “…/…/” from the shader paths fixed it for me, so now it loads. But is your shader (specifically v6.4) even supposed to look like this? Are there settings that need to be changed? Sorry if I missed something here but I’m having trouble finding out why this is happening? I doesn’t look much like yours and the clip.

1 Like

yeah, i appreciate you just mentioned it. I just set my presets within a sub folder. If anybody else have that problem or I have just forgot to tweak it from the public preset, then please remove the " …/…/ " characters from each pre-selected shader.

The screenshots / videos are equivalent to each preset being posted here. I didn’t mess anything with it. The screenshots you shared should be what is expected from the shader. I hope you like it !

And if you think the preset is not 100% accurate to the original clip / hardware, well my presets aren’t intended to do a 100% replication of them but with what I know and have available from those presets. Still, I hope they can be useful or good enough to have fun around with.

3 Likes

This is all new and interesting to me as someone who’s never experienced the genesis with the rainbow effect. I think it is the sharp vertical lines that threw me off a bit but that’s probably because I had not used bilinear filtering at the time. Just turned that on and boom…

Vertical lines are now soft so that greatly improved the image for me, and borders now have dark outline like in your proof rainbow sega v6.4.jpeg image. Good work! :+1:

1 Like

oh yeah, I thought people would just see it as default setting since as far as I’m aware, Retroarch comes with billinear filtering set ON by default.

Still, I encourage that if possible to address this effect with other composite-blurry looking for Sega Genesis games. I’m not that smart to give more presets at the moment. Thank God I could find this effect since then I feel like the composite-looking for Genesis games can be complete with the colorful lines.

I hope you can have a ton of fun around ! And thank you for giving any of these presets a try.

2 Likes

Why is it that in the “Framemeister Comparison: Sega Genesis RF VS SCART cables” video the whole screen shakes, while in your shader only certain graphics shake (tips of grass/trees, edges of Sonic) in RF mode then pixels shake even more in a “fuzzy” way while moving? How come RF behaves differently in that clip? :thinking: Sorry, as I said I’m quite new to this lol

2 Likes

That’s a interesting question. I don’t know the answer but maybe @guest.r can shed some light on that. I see what you mean with the screen shakiness though, I tried messing around with the different ntsc parameters in my preset and couldn’t produce that RF signal effect from the video

1 Like

Greetings fellows. I just did this little new experimental rainbow sega preset v6.5

This time combined with GTU-v050. In order to see Rainbow banding properly, it has to be played with Genesis Plus GX>options>borders=full or left/right OR BlastEm core which has borders set by default. Also, in order to get a more accurate audio experience coming from RF-Switch, in main menu > audio options set Output rate to 22000 and GPGX audio options from Stereo to Mono.

This time intended to bring more notorious Noise- video signal interference which is, at least for me very present with RF-Switch connection for NES and somehow I remember this notorious interference on Sega Genesis as well. Video signal with RF is even worse than Composite, so some other CRT artifacts being present here should fit along with the Composite blurry looking and the Rainbow banding. Have fun if anybody like it.

shaders = "14"
shader0 = "shaders_slang/crt/shaders/gtu-v050/pass1.slang"
filter_linear0 = "true"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "true"
srgb_framebuffer0 = "false"
scale_type_x0 = "source"
scale_x0 = "1.000000"
scale_type_y0 = "source"
scale_y0 = "1.000000"
shader1 = "shaders_slang/crt/shaders/gtu-v050/pass2.slang"
filter_linear1 = "true"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "NTSCPass"
float_framebuffer1 = "true"
srgb_framebuffer1 = "false"
scale_type_x1 = "source"
scale_x1 = "1.000000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/crt/shaders/gtu-v050/pass3.slang"
filter_linear2 = "false"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "ColorPass"
float_framebuffer2 = "false"
srgb_framebuffer2 = "false"
scale_type_x2 = "viewport"
scale_x2 = "1.000000"
scale_type_y2 = "viewport"
scale_y2 = "1.000000"
shader3 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_ntsc_encode.slang"
filter_linear3 = "true"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = "PrescalePass"
float_framebuffer3 = "false"
srgb_framebuffer3 = "false"
scale_type_x3 = "viewport"
scale_x3 = "1.000000"
scale_type_y3 = "viewport"
scale_y3 = "1.000000"
shader4 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_ntsc_decode.slang"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = "DeconvergePass"
float_framebuffer4 = "false"
srgb_framebuffer4 = "false"
scale_type_x4 = "viewport"
scale_x4 = "1.000000"
scale_type_y4 = "viewport"
scale_y4 = "1.000000"
shader5 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_color.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = "ScanlinePass"
float_framebuffer5 = "false"
srgb_framebuffer5 = "false"
scale_type_x5 = "viewport"
scale_x5 = "1.000000"
scale_type_y5 = "viewport"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_prescale.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = "FocusPass"
float_framebuffer6 = "false"
srgb_framebuffer6 = "false"
scale_type_x6 = "viewport"
scale_x6 = "1.000000"
scale_type_y6 = "viewport"
scale_y6 = "1.000000"
shader7 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_deconverge.slang"
filter_linear7 = "true"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = "PostPass"
float_framebuffer7 = "false"
srgb_framebuffer7 = "false"
scale_type_x7 = "viewport"
scale_x7 = "1.000000"
scale_type_y7 = "viewport"
scale_y7 = "1.000000"
shader8 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_scanline.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "false"
alias8 = "PhosphorPass"
float_framebuffer8 = "false"
srgb_framebuffer8 = "false"
scale_type_x8 = "viewport"
scale_x8 = "1.000000"
scale_type_y8 = "viewport"
scale_y8 = "1.000000"
shader9 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_defocus.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "false"
alias9 = "ChromaPass"
float_framebuffer9 = "false"
srgb_framebuffer9 = "false"
scale_type_x9 = "viewport"
scale_x9 = "1.000000"
scale_type_y9 = "viewport"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_post.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = "DistortionPass"
float_framebuffer10 = "false"
srgb_framebuffer10 = "false"
scale_type_x10 = "viewport"
scale_x10 = "1.000000"
scale_type_y10 = "viewport"
scale_y10 = "1.000000"
shader11 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_phosphor.slang"
wrap_mode11 = "clamp_to_border"
mipmap_input11 = "false"
alias11 = ""
float_framebuffer11 = "false"
srgb_framebuffer11 = "false"
shader12 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_chroma.slang"
wrap_mode12 = "clamp_to_border"
mipmap_input12 = "false"
alias12 = ""
float_framebuffer12 = "false"
srgb_framebuffer12 = "false"
shader13 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_distortion.slang"
wrap_mode13 = "clamp_to_border"
mipmap_input13 = "false"
alias13 = ""
float_framebuffer13 = "false"
srgb_framebuffer13 = "false"
compositeConnection = "1.000000"
signalResolution = "240.000000"
signalResolutionI = "55.000000"
signalResolutionQ = "21.000000"
tvVerticalResolution = "230.000000"
ntscsignal = "1.000000"
distortiontoggle = "1.000000"
humbaralpha = "0.070000"
humbar_hertz_rate = "0.252000"
avalue = "0.000000"
bvalue = "0.000000"
scantime = "51.800011"
col_saturation = "1.500000"
scanlinealpha = "0.400000"
defocus_x = "0.900000"
defocus_y = "1.100000"
distortion_amount = "0.060000"
cubic_distortion_amount = "0.060000"
distort_corner_amount = "0.340000"
round_corner_amount = "0.270000"
smooth_border_amount = "0.150000"
vignette_amount = "0.110000"
reflection_amount = "0.420000"
noise_amt = "3.500000"
prescale = "3.000000"
textures = "MaskTexture"
MaskTexture = "shaders_slang/crt/shaders/mame_hlsl/resources/aperture-grille.png"
MaskTexture_wrap_mode = "clamp_to_border"
MaskTexture_mipmap = "false"
1 Like

How’s it going?

Any progress for Version 7?

1 Like

I have made those two new just playing around with CRT artifacts and visuals but not likely a new version that would think can bring up something new along with the Rainbow effect. Those two are my own and new presets:

rainbow sega danny v6.6:

shaders = "11"
shader0 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_ntsc_encode.slang"
filter_linear0 = "true"
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/mame_hlsl/shaders/mame_ntsc_decode.slang"
filter_linear1 = "true"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "NTSCPass"
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/mame_hlsl/shaders/mame_color.slang"
filter_linear2 = "true"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "ColorPass"
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/mame_hlsl/shaders/mame_prescale.slang"
filter_linear3 = "true"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = "PrescalePass"
float_framebuffer3 = "false"
srgb_framebuffer3 = "false"
scale_type_x3 = "viewport"
scale_x3 = "1.000000"
scale_type_y3 = "viewport"
scale_y3 = "1.000000"
shader4 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_deconverge.slang"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = "DeconvergePass"
float_framebuffer4 = "false"
srgb_framebuffer4 = "false"
scale_type_x4 = "viewport"
scale_x4 = "1.000000"
scale_type_y4 = "viewport"
scale_y4 = "1.000000"
shader5 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_scanline.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = "ScanlinePass"
float_framebuffer5 = "false"
srgb_framebuffer5 = "false"
scale_type_x5 = "viewport"
scale_x5 = "1.000000"
scale_type_y5 = "viewport"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_defocus.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = "FocusPass"
float_framebuffer6 = "false"
srgb_framebuffer6 = "false"
scale_type_x6 = "viewport"
scale_x6 = "1.000000"
scale_type_y6 = "viewport"
scale_y6 = "1.000000"
shader7 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_post.slang"
filter_linear7 = "true"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = "PostPass"
float_framebuffer7 = "false"
srgb_framebuffer7 = "false"
scale_type_x7 = "viewport"
scale_x7 = "1.000000"
scale_type_y7 = "viewport"
scale_y7 = "1.000000"
shader8 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_phosphor.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "false"
alias8 = "PhosphorPass"
float_framebuffer8 = "false"
srgb_framebuffer8 = "false"
scale_type_x8 = "viewport"
scale_x8 = "1.000000"
scale_type_y8 = "viewport"
scale_y8 = "1.000000"
shader9 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_chroma.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "false"
alias9 = "ChromaPass"
float_framebuffer9 = "false"
srgb_framebuffer9 = "false"
scale_type_x9 = "viewport"
scale_x9 = "1.000000"
scale_type_y9 = "viewport"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_distortion.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = "DistortionPass"
float_framebuffer10 = "false"
srgb_framebuffer10 = "false"
scale_type_x10 = "viewport"
scale_x10 = "1.000000"
scale_type_y10 = "viewport"
scale_y10 = "1.000000"
ntscsignal = "1.000000"
distortiontoggle = "1.000000"
humbaralpha = "0.250000"
humbar_hertz_rate = "0.500000"
avalue = "0.000000"
bvalue = "0.000000"
scantime = "51.800011"
qfreqresponse = "0.350000"
col_saturation = "1.400000"
defocus_x = "1.000000"
defocus_y = "1.400000"
cubic_distortion_amount = "0.030000"
round_corner_amount = "0.390000"
vignette_amount = "0.160000"
noise_amt = "3.500000"
textures = "MaskTexture"
MaskTexture = "shaders_slang/crt/shaders/mame_hlsl/resources/aperture-grille.png"
MaskTexture_wrap_mode = "clamp_to_border"
MaskTexture_mipmap = "false"

preset v6.7:

shaders = "14"
shader0 = "shaders_slang/crt/shaders/gtu-v050/pass1.slang"
filter_linear0 = "true"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "true"
srgb_framebuffer0 = "false"
scale_type_x0 = "source"
scale_x0 = "1.000000"
scale_type_y0 = "source"
scale_y0 = "1.000000"
shader1 = "shaders_slang/crt/shaders/gtu-v050/pass2.slang"
filter_linear1 = "true"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "NTSCPass"
float_framebuffer1 = "true"
srgb_framebuffer1 = "false"
scale_type_x1 = "source"
scale_x1 = "1.000000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/crt/shaders/gtu-v050/pass3.slang"
filter_linear2 = "false"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "ColorPass"
float_framebuffer2 = "false"
srgb_framebuffer2 = "false"
scale_type_x2 = "viewport"
scale_x2 = "1.000000"
scale_type_y2 = "viewport"
scale_y2 = "1.000000"
shader3 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_ntsc_encode.slang"
filter_linear3 = "true"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = "PrescalePass"
float_framebuffer3 = "false"
srgb_framebuffer3 = "false"
scale_type_x3 = "viewport"
scale_x3 = "1.000000"
scale_type_y3 = "viewport"
scale_y3 = "1.000000"
shader4 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_ntsc_decode.slang"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = "DeconvergePass"
float_framebuffer4 = "false"
srgb_framebuffer4 = "false"
scale_type_x4 = "viewport"
scale_x4 = "1.000000"
scale_type_y4 = "viewport"
scale_y4 = "1.000000"
shader5 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_color.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = "ScanlinePass"
float_framebuffer5 = "false"
srgb_framebuffer5 = "false"
scale_type_x5 = "viewport"
scale_x5 = "1.000000"
scale_type_y5 = "viewport"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_prescale.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = "FocusPass"
float_framebuffer6 = "false"
srgb_framebuffer6 = "false"
scale_type_x6 = "viewport"
scale_x6 = "1.000000"
scale_type_y6 = "viewport"
scale_y6 = "1.000000"
shader7 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_deconverge.slang"
filter_linear7 = "true"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = "PostPass"
float_framebuffer7 = "false"
srgb_framebuffer7 = "false"
scale_type_x7 = "viewport"
scale_x7 = "1.000000"
scale_type_y7 = "viewport"
scale_y7 = "1.000000"
shader8 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_scanline.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "false"
alias8 = "PhosphorPass"
float_framebuffer8 = "false"
srgb_framebuffer8 = "false"
scale_type_x8 = "viewport"
scale_x8 = "1.000000"
scale_type_y8 = "viewport"
scale_y8 = "1.000000"
shader9 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_defocus.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "false"
alias9 = "ChromaPass"
float_framebuffer9 = "false"
srgb_framebuffer9 = "false"
scale_type_x9 = "viewport"
scale_x9 = "1.000000"
scale_type_y9 = "viewport"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_post.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = "DistortionPass"
float_framebuffer10 = "false"
srgb_framebuffer10 = "false"
scale_type_x10 = "viewport"
scale_x10 = "1.000000"
scale_type_y10 = "viewport"
scale_y10 = "1.000000"
shader11 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_phosphor.slang"
wrap_mode11 = "clamp_to_border"
mipmap_input11 = "false"
alias11 = ""
float_framebuffer11 = "false"
srgb_framebuffer11 = "false"
shader12 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_chroma.slang"
wrap_mode12 = "clamp_to_border"
mipmap_input12 = "false"
alias12 = ""
float_framebuffer12 = "false"
srgb_framebuffer12 = "false"
shader13 = "shaders_slang/crt/shaders/mame_hlsl/shaders/mame_distortion.slang"
wrap_mode13 = "clamp_to_border"
mipmap_input13 = "false"
alias13 = ""
float_framebuffer13 = "false"
srgb_framebuffer13 = "false"
compositeConnection = "1.000000"
signalResolution = "272.000000"
signalResolutionQ = "21.000000"
ntscsignal = "1.000000"
distortiontoggle = "1.000000"
humbaralpha = "0.250000"
humbar_hertz_rate = "0.500000"
avalue = "0.000000"
bvalue = "0.000000"
scantime = "51.800011"
qfreqresponse = "0.350000"
col_saturation = "1.400000"
defocus_x = "1.000000"
defocus_y = "1.400000"
cubic_distortion_amount = "0.030000"
round_corner_amount = "0.390000"
vignette_amount = "0.160000"
noise_amt = "3.500000"
textures = "MaskTexture"
MaskTexture = "shaders_slang/crt/shaders/mame_hlsl/resources/aperture-grille.png"
MaskTexture_wrap_mode = "clamp_to_border"
MaskTexture_mipmap = "false"

Little reminder than those two presets work with the proper Rainbow banding if you have Borders set to FULL in GenesisPlusGX core or BlastEm as default

Aside from that, there’s a new preset that @sonkun has managed to make and mix up alongside with CRT.guest.r NTSC preset. But seems like he removed his public rainbow preset.

2 Likes

It’s still there. If anything make sure you download guest’s latest shader update. I modified my shader pack to go with his new release

1 Like

oh yeah, my bad.

This is definetely a great addition from him and really appreciate it. The fact to think it could be mixed up with mega bezel or soqueroeu just gives me way more hype. Definetely sonkun did a great job there.

If anything, that preset for the rainbow could be the next version.

2 Likes

Thank you man I appreciate it, I love how these sets came out. The only thing I wish I can alter a bit is the jittering and turn it down just slightly, it’s kind of essesive but I guess that’s just the nature of the shader. Still all good

1 Like