Please show off what crt shaders can do!

Lovely screens, @shenglong, and great post. Our taste is indeed very similar, we go for the same look (the images I’m posting are smaller obviously because of 720p, but once stretched, almost identical).

100% agree. I started the thread with that in mind, to see what other people were going for, learn from them and share my experience so they could learn from me as well. There’s not so many people in the ‘real world’ who are interested in these things, at this level. Feels great, the feedback.

1 Like

Yes, great thread. Eager to see and learn from others. I just wish I spent more time playing the actual games than tinkering with shaders :crazy_face:

1 Like

So this evening I have been messing around with those DC 2D fighters that mix lo-res pixels with hi-res assets, like MvC2. I tried that scale_y0 = “240” solution and I didn’t like it, although I find that it might be very useful for other types of content. Combined with easymode it provided a very CRT-y feel. I also discovered why you said it ruins text, @shenglong. It certainly does. It also looks like crap when linear filtered (although text becomes more readable, give it a try) and it destroys a lot of the detail from the beautiful, high resolution backgrounds. So I tried a few things and this what I got. Text and UI are perfect, backgrounds are perfect, 3D assets are perfect, and sprites are… well as good as they can get considering how much smaller they are compared with everything else. Screens are from CvS1.

3 Likes

Good point with the scanlines. I reworked my scanlines yet again and got a luminosity-responsive adaptive-width system going without an additional texture lookup that’s 720p friendly with the shadowmask overlay, though in these screenshots it’s 3x res for the scanline shader and then 4/3x res for shadowmask overlay to get it up to 4x and get a little blur out of the upscale. Also my JVC 3DLUT was thrown in since it’s visual MSG; it’s called jvc_tm in the LUT directory of the GLSL Shaders repo.

5 Likes

@Squalo The low res 2D sprites can be a pain, you just have to find a sweet spot that you find which works for you.

@Great_Dragon, those screen shots of Sonic, Mega Man you posted earlier in the thread… I really like that CRT effect too, it does not have strong scan lines but the mask effect makes it look like a VGA/CGA monitor from the early 90’s. I have a few presets that I found on the web which look like the output you posted but my system struggles with the intense shader chain. Also, with them being in .cgp format they are not compatible with all cores.

@torridgristle The Virtua Fighter screen shot looks nice and the scan line work your doing is pretty impressive, will these shader updates be available in the official libretro repostiory? I don’t want to hijack this thread so I will post a request in your other thread GritScanlines Lightweight LUT-Based Scanline Glow Concept + Prototype GLSL. It’s related to @Great_Dragon screen shots earlier in the thread.

Those shaders you mentioned in the other thread are exactly the same I use. I fact it’s one shader with some values changed to achieve desired look.

Here is original Birm’s post

AFAIK to be able to use the shader preset you have to have pretty beefy PC, Analog Shader Pack 3 from the thread and more over you limited with CG shaders. Unfortunately original shaders in ASP3 all are heavy modified. Even those which has the same name as RA’s shaders. So it’s very hard (for me) to conver it to something more modern and flexible like GLSL or SLANG.

The only thing I manage to achieve is to make shadow mask (dot mask) less visible and more round-dish.

Here is original shader look (MaskType=4)

Here is modified

So I made DotShader’s size fixed.

scale_type_x10 = "absolute"
scale_type_y10 = "source"
scale_x10 = "1280"
scale_y10 = "3.000000"
shadowMask = "4.000000"

Unfortunately there is little bug with that modification. Some dark transparent lines become visible across the screen and I don’t know how to fix it at the moment.

UPD: Forgot to mention that I’ve changed Dot Mask Type to 4.

UPD2: Those shaders from Brim’s pastebin folder look updated (October 20th) and so Contrast version of the shader looks brighter which is good thing.

2 Likes

Thanks for clarification, I did assume they were done by the same person or someone trying create a similar effect. Regarding my comments in the other thread, maybe the video compression in the YouTube video I linked to is making the mask appear grayscale and softer. Your screen shots look lovely, plus I zoomed into your screenshots like 1000% which isn’t normal, when viewing from the couch they would look just fine.

EDIT: @Great_Dragon - maybe the dot mask 4 is what makes yours more prominent?

EDIT: Anyway, shame this effect hasn’t been re-created in GLSL and made less resource intensive.

shenglong, so you are checking with torridgristle if there is a way to emulate the above shader with a basic png mask?

Would love to have the ASP v3 (I believe v4 is in the works) in glsl, as being an Intel owner, I cannot do much with cg’s.

EDIT: Checking the above image again, I can see that it has a vignette effect as well, darkening the corners. That can be easily achievable with an overlay anyways.

@torridgristle - that was one brilliant idea mate. It runs blazing fast and looks really nice.

And yeah, @Great_Dragon’s mask is lovely indeed. It’s just that I tend to prefer aperture grills, and also that I can’t tell what shadow masks really look like until they are merged with scanlines.

Yeh I’ve asked @torridgristle in his thread if he could kindly have a go, he has posted in this thread and done some work on making lightweight GLSL shaders that utilise LUTs (look up textures). I’m not technical so don’t even know if it’s possible, no harm in asking :grinning: Hopefully what I’ve requested makes sense!

I’ve had ASPv3 since day one, it has some cool presets but I don’t actively use it because the CG format does not work with some cores and you need a beefy machine to use the more advanced stuff.

Yes. That Dot Mask 4 with default settings looks more visible. Though if you change its size you will turn it into somewhat close to real TV shadow mask IMO.

If that is what you are looking for you can use Dost Mask shader alone with mask type 4 and fixed size. Or you can use CRT-Lottes (that is original shader from where they rip off that dot mask filter). But you have to change kernel shape size to 3

alias0 = ""
bloomAmount = "0.150000"
brightBoost = "1.000000"
filter_linear0 = "false"
float_framebuffer0 = "false"
hardBloomPix = "-1.500000"
hardBloomScan = "-2.000000"
hardPix = "-3.000000"
hardScan = "-8.000000"
maskDark = "0.500000"
maskLight = "1.500000"
mipmap_input0 = "false"
parameters = "hardScan;hardPix;warpX;warpY;maskDark;maskLight;scaleInLinearGamma;shadowMask;brightBoost;hardBloomPix;hardBloomScan;bloomAmount;shape"
scale_type_x0 = "absolute"
scale_type_y0 = "source"
scale_x0 = "1280"
scale_y0 = "3"
scaleInLinearGamma = "1.000000"
shader0 = "D:\Games\Emu\RetroArch\shaders\shaders_glsl\crt\shaders\crt-lottes.glsl"
shaders = "1"
shadowMask = "4.000000"
shape = "3.000000"
srgb_framebuffer0 = "true"
warpX = "0.001000"
warpY = "0.001000"
wrap_mode0 = "clamp_to_border"

Both shaders are available in GLSL

As for the viewing distance you are absolutely correct. This type of look is not designed to play on PC monitor with usual viewing distance around 60 cm. It looks well on my 40" TV from 2 meters away.

2 Likes

@Great_Dragon - Brilliant will have a go with dotmask and fixed size later when I get home.

I fixed the messy scanlines in GameCube and DreamCast with the crt-hyllian-3d shader.

3 Likes

I keep experimenting and trying new stuff. This is a working progress of a preset that really has a high contrast crt feel to it. I still need to improve the scanlines, but it shows a lot of promise. It looks so cool in movement, almost like it increases the resolution of games, just like a good crt does!

4 Likes

Looks more like a lcd to me. :wink:

Dunno entirely how to start here… anyway, owning a Samsung 40" 4K UHD Smart TV from MU6100-series, and been trying to explore that for playing retro-games through plugging from my laptop to that TV. Sounds horrible, I know…

Anyway, I played around with CRT-Royale for some games now and then, and have kind of liked this look:

I think I’m hitting to 720p-resolution for games here - meanwhile my laptop’s 1080p currently (bought it 3 years ago, lol)

TBQH, IDK what to go off entirely to emulate the looks of PVMs (minus some heavy scanlining) on my 4K LCD TV, so some help could be nice.

4 Likes

Those are actually quite nice, @daddu3!

Preset is shaping up well, scanlines up and running

4 Likes

You think? Thanks fam! I guess I’m in a good track for now… :smiley:

1 Like

CRT-Royale is life, CRT-Royale is love ! Nice Zelda ALTTP mod by the way !

2 Likes

I’ll guess I’ll stick with Royale for now! :face_with_hand_over_mouth:

On that end, the credit for that ALLTP-mod goes to here: https://www.romhacking.net/hacks/2796/. Though I guess I DID do something of my own modding to it, combining it with this QoL-hack: https://www.romhacking.net/hacks/2234/

I have to blame Smash Ultimate’s incarnation of Zelda for trying this mod, she’s too adorable~

1 Like