A new little shader i did (glsl)

I’m looking forward to your experiments lol. Your shader already got me back to playing a bunch of Saturn classics anything else you add at this point will only make it better. I’m so glad you added in that slot mask

1 Like

Yeah also me I can’t play those old 8bit games e.g. Atari 2600 or Zx spectrum/c64 with sharp filters or with too much noise from ntsc filters. It just doesn’t feel right.

1 Like

Check this out, this was relatively straight-forward since contrast was already there (Grade vignette works sitting on contrast). Zero cost on performance.

P.S. have to alter contrast value a tick, since i have a switch if contrast = 1.0 not to be working, and disables vignette too that sits there.

https://mega.nz/file/rvpE3aSS#WCf9RRLlA1g5Oh-Zc2QF-Qi5T01YQlMwanexm8alyag

2 Likes

Aha! So grade CAN be gutted after all lol. That’s lovely, this shader is turning out so fun I love it.

This is the preset I been using so far:

shaders = "1"
shader0 = "shaders_glsl/crt/shaders/testing.glsl"
filter_linear0 = "true"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
blurx = "0.450000"
blury = "0.150000"
warpx = "0.030000"
warpy = "0.040000"
smoothness = "100.000000"
beamlow = "2.000000"
beamhigh = "2.400000"
Shadowmask = "6.000000"
MaskDark = "0.600000"
GAMMA_IN = "2.200000"
glow = "0.080000"
sat = "1.150000"
contrast = "1.050000"
WP = "-40.000000"

Were you ever able to look into that interlacing issue? I still see that moire like pattern with it toggled on

2 Likes

Maybe @guest.r can give us some hint about it since he wrote that scanline code.

2 Likes

I’ll leave this post here so he can see what I’m taking about. I hope he’ll even be interested in dealing with that old version of his shader.

1 Like

I am sure he can fix it in no time if he bothers. Regarding that mask 6 if you make the calculations it creates a virtual resolution 480 x 270 at 1080p which is pretty close to a normal TV. Not bad heh :wink:

Mask 4 should be 720 x 540

1 Like

Ok so it is fixed with a simple fp.y*fp.y on integer scaling, on non-integer it creates some not-well aligned scanlines

3 Likes

Ok so actually it works even as it is, if integer is on and Y curvature off, so the problem is how it aligns to curved screen and in non-integer

2 Likes

Damn I’m not home anymore to test all of this. So you’re saying it only looks right with integer scaling and you’ll get the non aligned scanlines with non integer scaling? I hope that’s not the case cause I never use integer scaling

2 Likes

Best is to simply disable scanlines at 480i either way you don’t see scanlines in reality at 480i and keep the flicker

1 Like

What’re we trying to gut from grade?

Try this with scanlines out at 480i, dumped the old scanlines code and using the latest from Guest.r-Dr.Venom, so you need to adjust values again on your preset. Contrast now is off at 0.0 so it can use Vignette at 1.0. Adjusted masks a bit, some of them had some horrible clipping (namely 0 and 3)

https://mega.nz/file/u3wCGJqI#7cgJvJTlkAuApH4ToN3K_ezHkyKrgtTLBF062NXU1Mo

Already guttted vignette heh

3 Likes

Hang on, are taking stuff from grade to put elsewhere or are we just cutting things from grade?

Taken Vignette from Grade and merged here, Android doesn’t load Grade.

2 Likes

You did it, it’s fixed and the interlacing looks the way it should now:

I’m not sure what else I’d like to see gutted from grade except maybe the phosphor and display color space parameters. One request I do have is if you can gut the afterglow parameters from guest’s grade shader which he recently started including in his shader updates. It’s in the guest/advanced/grade folder labeled “pre-shaders-afterglow-grade”

2 Likes

So you’ve basically fixed moire in GDV-Mini? If so, I can’t wait to see this implemented in CRT-Guest-Advanced since this is currently my biggest stumbling block in getting my shader presets to look right without integer scale and on hires cores as well as when using curvature or downscaled to fit overlays and backgrounds.

@guest.r

2 Likes

:wink:

Here you go, it’s already implemented. Or maybe fake scanlines can be used. :grinning:

3 Likes

In my case, I’m more trying to battle moire in scenarios other than 480i or 480p. I don’t have a problem with my regular presets and platforms I use, even the 480i/480p ones. Some users who like to mix and match my presets with other bezels, graphics and overlays and use curvature seem to run into this all the time and have figured out their own workarounds. I’m merely looking for the solution that deviates the least from the original vision for the particular preset.

This is basically my first foray into integrating my presets with other bezels and experiencing first hand what users have been experiencing.

Basically I did that bashing an old guest.r version, adding masks from current version, so it can run full speed on weak GPUs but if you want I can simply switch off scanlines at InputSize.y > 400

I can fix it :stuck_out_tongue_winking_eye:

PS thing is 480i like Dreamcast doesn’t have scanlines, 480p like VGA in example has that tiny scanlines. So by disabling it you switch off scanlines at 480p too and that maybe is not wanted at all scenarios. In other words a cheap fix.

1 Like