Hyllian shaders and presets

What was the bug, high level if you can?

I also noticed you took away the svideo present.

A small graphical glitch that may happen when the coords assume the exact value in the middle between two pixels and the math inside the shader canā€™t decide exactly which one it should use. Adding some residual value can fix that sometimes. It happens often in some shaders.

Yes, I couldnā€™t find a point in keeping svideo when you have rgb. S-video doesnā€™t blend pixels like composite, and is just slightly worse than RGB in colors. So, it just doesnā€™t bring anything worth to the table. Only composite and rgb are really important.

1 Like

New release: hspack - 24-01-24-r1

Whatā€™s new:

  • Fixed a minor color problem that happens in rare games;
  • Added crt-hyllian-composite-sharp preset.

Screens from crt-hyllian-composite-sharp:

4 Likes

Great job, the new composite sharp looks great!

I especially like all the ā€œhyllianā€ presets, the color rendition is very pleasing and different from most preset around here!

1 Like

Thanks! Iā€™ll have to work on a version where ntsc works in linear color space. On these just released only the crt portion is in linear gamma. It may improve IQ.

For now I prefer ntsc shaders in color gamma, because when I try it in linear gamma it creates an amazing amount of ringing.

1 Like

A Rainbow effect Iā€™m working with chroma scaling:

A version of the pack with two presets for rainbow effect:

hspack-24-01-25-r1 (I had to include tweaked ntsc-adaptive shaders.) Effect can be toned down. Itā€™s set to RF artifacting level. Itā€™s strong as a POC.

BTW, I have a feeling that linearization of ntsc passes arenā€™t a real thing. Proof? Look how the fonts ins some games arenā€™t dilated in real screenshots:

https://www.reddit.com/r/crtgaming/comments/wrscbm/proof_that_composite_isnt_always_bad/

https://www.reddit.com/r/crtgaming/comments/uxlwqt/composite_really_isnt_so_bad/

Look how the desk is visible in this famous screen. If linearized, the desk becomes almost invisible and transparency is dimmed a lot: https://twitter.com/CRTpixels/status/1380227917481918466

Offscreen from real genesis composite:

This is ntsc with rainbow fixed non-linearized:

This is ntsc with rainbow fixed and linearized:

EDIT: Now looks like this subject is more controversial than I thought. An example I found showing just the contrary proof, :stuck_out_tongue:

Offscreen from a real crt using composite:

And this is what Iā€™m getting linearizing ntsc passes:

So, Iā€™m now more confused than before! At least Chroma Artifact Phase is now correct.

6 Likes

That composite sharp rainbow preset is sexy. Thatā€™s the look Iā€™ve been trying to achieve with the mame ntsc shader but just couldnā€™t get it right. Amazing work there man.

2 Likes

You can see what I changed on ntsc-pass1.slang in the last pack (I had to include ntsc shaders as I donā€™t know if the repo will receive these changes). Itā€™s just a small change in chroma_phase to modulate it.

I chose to just double the artifact chroma period so that the rainbow got enlarged to the desired size. Iā€™m still thinking if I broke something else and if this change should be ON/OFF (as itā€™s now) or a slide for the user to modulate the rainbow size at will. You can even invert the colors of the rainbow by decreasing the variable to less than 1.0, though I think the only accurate value is 2.0. On another note, by using the 2.0 value, you need to increase Artifacting Cost (good values are in the range 0.50-1.00). Also, fringing artifact change the rainbow colors too, when I use 0.50 the colors aproximate the most from that real crt sonic waterfall screen.

BTW, the rainbow manifests in some other games too:

3 Likes

Iā€™ll take a look.

On another note just going through the different folders and seeing how you got everything set up I see your packs becoming legendary the more it expands, Iā€™m having fun trying out the different presets and experiencing the various looks each one has. 2024 is looking good for crt shaders indeed. Gonna have to get Retro Crisis to do a video on your packs soon enough.

2 Likes

Maybe itā€™s because of the hardware, thereā€™s some variance on both ends, i.e. the consoles have different encoders, the crts differ in their handling of the signal. Yesterday, I was stumbling over a post where somebody was demonstrating how the palm trees in Sonic 2 differ because of different comb filters.

On the Atari 7800, the colors are supposed to change depending on the temperature of the consoleā€¦

4 Likes

Oh cmon!!

No joking!

1 Like

Some more comparisons: Source

Configuration using: fringing=0.50, artifacting=0.50, rainbow=1.0, chroma scaling=4.0. I think the fringing can be set between 0.00 and 0.50. In some screens itā€™s better at 0.00. For playing, itā€™s much better setting fringing to 0.00.

Screenshot captured from Genesis Model 1 through composite:

Screenshot from RA using ntsc-adaptive (the new one updated in repo). Look at the ENEMY bar: Rainbow happens there. The red bars at PLAYER are uneven (this only happens if fringing > 0.00):

Screenshot captured from Genesis Model 1 through composite:

Screenshot from RA using ntsc-adaptive (the new one updated in repo). See the rainbow over the coconut tree leaves. It uses fringing=0.50 too.

Screenshot captured from Genesis Model 1 through composite:

Screenshot from RA using ntsc-adaptive (the new one updated in repo). This is an example where fringing must be set to 0.00 to get the most accurate rainbow:

Additional note: On genesis games of resolution 256x224 (Phase 3 games, the same as most snes games), the composite doesnā€™t show any fringing artifacts nor chroma. So they behave almost like snes through composite.

Look at this screen captured from genesis model 1 composite. See the dithering intact at the floor and at the frame. You need to set fringing and artifacting to 0.00 to get this visual:

Additional note 2: See this video comparing Genesis and 32x through composite at the Sonic famous Watterfall: video comparison. Look how the rainbow is identical to the new rainbow effect in ntsc-adaptive set to 1.0 and artifacting at 0.50 (fringing is free to use between 0.00 and 0.50). The 32x example doesnā€™t show any of these artifacts through composite.

5 Likes

I freaking need this sexy juicy rainbow effect for my md rainbow presets, Iā€™m being teased lol.

2 Likes

Repo was already updated. You can use the ntsc-adaptive with that params.

BTW, new release: hspack-24-01-27-r2

  • Updated rainbow params for more sane values;
  • Now presets point to ntsc folder again.
4 Likes

New release: hspack-24-01-30-r2

  • hyllian presets updated and simplified. Got rid of some redundant presets;
  • composite sharp shaders updated;
  • some hyllian params updated.

EDIT: I had to tone down sharpness a bit. It fixes some artifacts.

Screens from composite-sharp and/or composite-sharp-rainbow-effect:

0015-240130-103806 0015-240130-103607 0015-240130-103243 0015-240130-103152 0015-240130-103053 0015-240130-103011 0015-240130-102935 0015-240130-102852 0015-240130-102803 0015-240130-102741 0015-240130-102645 0015-240130-102337

8 Likes

Hereā€™s a simple-composite shader I made for potato systems.

Itā€™s equivalent to Tv Mode (CVBS) in Kega Fusion. Itā€™s a very simple shader and you can tweak some parameters like blend level, for example.

Append any crt shaders and you get a good composite quality. Not so perfect as the ntsc shaders, though.

8 Likes

And hereā€™s a lighter version of ntsc-adaptive using only 15-taps (instead 33) for 2-phase games: ntsc-adaptive-lite

Itā€™s basically identical to ntsc-adaptive, but faster on 2-phase games and halves the number of lookup textures. Maybe it can run well on potato systems too.

Other than that, I have normalized all coefficients for luma and chroma 2 and 3 phases.

New release: hspack - 24-02-07-r1

Whatā€™s new:

  • Added crt-hyllian-sinc (multipass too) and updated it to include composite configurations. There are two presets for genesis and snes composite.
  • Added custom sharpness and radius to horizontal filtering in sinc presets. So, you can tweak it to get smooth or sharper visuals;
  • Fixed crt-royale-ntsc gamma;
  • All ntsc presets are now pointing to ntsc-adaptive-lite (included in this pack). Itā€™s fast and offer identical visuals to standard ntsc-adaptive.

As Iā€™m obsessed to get a sharp composite configuration, Iā€™ve managed to get something really good using sinc in four taps. The two sinc composite included presets donā€™t use the ntsc shaders, they use their own filtering and get the sharpest composite Iā€™ve ever seen.

Screens from crt-hyllian-sinc-composite-genesis preset:

01-Sonic-The-Hedgehog-2-World-Rev-A-240207-182638 01-Sonic-The-Hedgehog-2-World-Rev-A-240207-182620 01-Sonic-The-Hedgehog-2-World-Rev-A-240207-182451 01-Sonic-The-Hedgehog-2-World-Rev-A-240207-182334 01-Sonic-The-Hedgehog-2-World-Rev-A-240207-152508

8 Likes

New release: hspack-24-02-13-r1

Still focusing the work on crt-hyllian-sinc and variantsā€¦

Whatā€™s new:

  • Added curvature code to all crt-hyllian shaders;
  • Anti-ringing code improved;
  • Minor preset tweaks;

7 Likes

New release: hspack-24-02-18-r1

  • Ntsc-adaptive-lite updated with code to mitigate checkerboard interaction when rainbow effect is active. Should fix problems like Streets of Rage 2 yellow lights when Rainbow Effect is activated;

  • It fix a Chroma Scale bug that appear when using a value above 3.0 and Rainbow Effect is active.

5 Likes