Please show off what crt shaders can do!

@guest.r, good effort. I use something similar for 480 content such as Dreamcast, Sammy Atomiswave, GameCube etc…

As far as I know the blendoverlay shader is only available in SLANG format, hence why you can’t find it under CG.

Yes, I added it to the slang version a couple of months ago but have not added it to the GLSL version.

New ps1 “hi-def” preset!

4 Likes

Current apex of my work on new shaders involving adaptive-width scanlines, subtle blooms, and a phosphor texture utilizing LCD subpixels for conveying finer details.

8 Likes

Recent changes for Beetle PSX which brought Super Sampling have fixed a lot of issues with inconsistent resolution and bad mixing of 3D and 2D objects.

But I would like to showcase you how well 3D and 2D objects can be merged just by using a shader preset without losing details. This is my shader chain for PSX I presented previously with some minor adjustments:

ia_black_level = "0.100000"
ia_R = "1.050000"
OverlayMix = "0.500000"

4 Likes

That looks quite nice Great_dragon!

Below are GB, GBC, and GBA games with a crt shader. The results are quite interesting. All are using crt-royale-tvout+image-adjustment. Link’s Awakening looks fantastic.

3 Likes

@torridgristle - fantastic work, man!

@Great_Dragon - yeah that looks great. Is it 1x or 2x internal res?

@Arviel - I too run everything, including handhelds, with crt shaders. They look much better than LCD filters imo. GBA and DS become particularly handsome

It’s 4x internal resolution. No Super Sampling applied. No MSAA.

This is how I solved that riddle back in the day. It looks good enough I’d say!

2 Likes

A bunch of games using crt-royale-tvout+image-adjustment. Would it be possible to convert this shader to slang? I see other royal variants but not this one.

5 Likes

I specifically setup my shaders so that at the touch of a hotkey I can switch between different ‘connection’ types. These look phenomenal on my KD5 CRT PC Monitor running at 1280x960 (4x 240p) I’m always tweaking these, but here are my current ones:

  • NTSC-Colors
  • GTUv50
  • Image-Adjustment
  • CRT-Geom
  • Interlacing
  • Dotmask

The HDMI Shader is XBRZ-Freepass instead of GTUv50

RGB simply lacks GTUv50 or XBR as well as NTSC colors

Stock

RF-VHF

Composite-CVBS

Component-YPbPr

RGB-SCART

HD-HDMI

5 Likes

has this been converted to GLSL yet? I’d like to try this. Using the LCD subpixels to convey finer details is a very cool idea.

@Arviel - those look phenomenal! Also, a great selection of games.

Happy new year everyone! Damn 2019 sounds like science fiction…

Some exciting news. @guest.r has been developing a crt shader which I’m currently experimenting with, and I believe it has enormous potential.

The (very interesting) discussion where I learnt about it can be found here, together with glsl files for RA. It seems to do it all: scanlines, masks, glow, curvature, white balance and other image adjustments… pretty sure it will soon be in the official repo.

Great to see @torridgristle’s awesome Grits-scanlines there too :smiley:

5 Likes

Thanks for the pointer on the new crt shader @Squalo :male_detective:

Wow @guest.r, you kept that one quiet! Just tried the crt-guest-dotmask and crt-guest-dr-venom variations out and they certainly do look great with some very unique effects going and along with a host of new parameters. Can’t wait for it to appear in the official repo.

1 Like

Well, I’ve come around to the conclusion that a very slight amount of blur enhances the picture quality for 240p content and also more closely approximates how a CRT works compared to pure nearest neighbor filtering.

The tricky thing about blurs is that almost all of them are too heavy-handed, smearing the colors too much and destroying the contrast around highlights. It’s the difference between adjacent light and dark colors that causes the highlights to stand out (or “pop”), and this is lost when too much artificial blur is added. The resulting image is flat, dull, and lifeless.

The key is to make the blur radius less than the radius of the emulated pixels, e.g., if you’re using a 6x5 integer scale, the blur needs to be less than 6 pixels wide (referring to the LCD’s pixels). Otherwise, you ruin the highlights (IMO).

The first shot below is using nearest neighbor filtering. The second shot is using modified Quilez scaling. Both have scanlines and an RGB aperture grille overlay. In the second shot, I set shader filter to linear and set the “x-axis blur” parameter to 0.00. This is using the z_fast CRT shader. This results in a 2 pixel(?) wide horizontal blur and gives the scanlines a more “rounded” appearance. This makes the transitions between adjacent light and dark pixels somewhat less harsh and more natural looking without completely destroying the contrast around highlights.

3 Likes

Some screenshots showing off guest.r’s shader.

6 Likes

I’m really digging those beam dynamics.

2 Likes

Was thinking the same. The glow looks nice, too- not terribly exaggerated. Though, again, it seems like there’s probably a bit too much bloom going on, at least for a properly calibrated CRT.

I’d like to see some shots with the bloom toned down a bit and some chunkier phosphors instead of the BVM-like phosphors in the above examples, and with the curvature disabled.

Overall, looks very promising!

2 Likes

Oh yes! That shader is looking fine! I truly hope it wont be very demanding on the specs. Thanks for sharing @Arviel.

1 Like