Please show off what crt shaders can do!

Yeah, the scanline shaping parameters (low, high) changed from 8.0/8.0 to 6.0/8.0, which means the center is a bit less rounded and brightness increases. The starting preset is quite neutral though, the mask is easy, the scanlines lighter, filtering a bit shy…:smiley:

As the glcore video driver got implemented, i was a bit cautious at the beginning, but now i use without second thoughts. I would really like to hear from someone what are still the benefits of the ‘gl’ driver and glsl shaders regarding desktop users, so i can use this info for something useful. I think i need a clear vision how the glsl version could look like, because some solutions aren’t compatible with the slang version, most are though.

2 Likes

I don’t know of a lot of benefits for desktop users. The main benefit is for mobile/GLES users, AFAIK.

2 Likes

I will give a try to glcore.

2 Likes

Amazing. I got around to testing it and I absolutely love this shader. The interlacing looks good on consoles like PlayStation and Dreamcast, the bloom makes all the difference. From my understanding is it not possible to do a glsl port? As hunterk mentioned it benefits more for Android users which is what I use, and the two main cores I like to test your shader on only work on the glsl driver.

If by that you mean most of the shader can be ported with few sacrifices I believe it can still be a welcome addition, something like how the “stock” crt-guest-dr-venom shader is in the crt folder.

3 Likes

I’ll try to do the GLSL port next week, will turn out nice. :smiley:

8 Likes

How did you manage to make Daphne work on RetroArch? Is there a tutorial?

I’m using a Android test version core that was put out as a beta that actually worked (version 0.04) before it got turned into the way it is now.

Please, update the README file.

:wink:

Thanks!

1 Like

Hey thank you, unfortunately I no longer have this preset. I will use another file hosting website next time, I made this simple preset which also works in opengl if it can help.

  1. https://pasteboard.co/IUOFNNv.png
  2. https://pasteboard.co/IUOFULp.png
shaders = "1"
shader0 = "shaders_slang/crt/shaders/crt-aperture.slang"
filter_linear0 = "false"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
parameters = "SHARPNESS_IMAGE;SHARPNESS_EDGES;GLOW_WIDTH;GLOW_HEIGHT;GLOW_HALATION;GLOW_DIFFUSION;MASK_COLORS;MASK_STRENGTH;MASK_SIZE;SCANLINE_SIZE_MIN;SCANLINE_SIZE_MAX;SCANLINE_SHAPE;SCANLINE_OFFSET;GAMMA_INPUT;GAMMA_OUTPUT;BRIGHTNESS"
SHARPNESS_IMAGE = "2.000000"
SHARPNESS_EDGES = "5.000000"
GLOW_WIDTH = "0.500000"
GLOW_HEIGHT = "0.500000"
GLOW_HALATION = "0.010000"
GLOW_DIFFUSION = "0.000000"
MASK_COLORS = "2.000000"
MASK_STRENGTH = "0.000000"
MASK_SIZE = "1.000000"
SCANLINE_SIZE_MIN = "0.390000"
SCANLINE_SIZE_MAX = "1.000000"
SCANLINE_SHAPE = "1.000000"
SCANLINE_OFFSET = "0.000000"
GAMMA_INPUT = "5.000000"
GAMMA_OUTPUT = "4.400001"
BRIGHTNESS = "2.000000"

3 Likes

Are there any special considerations for an LG OLED TV with WRGB pixel structure? It doesn’t seem like the green/magenta masks will work – and indeed, they look strange on my LG C9.

If anyone can tell me how WRGB subpixels make 100% red, blue and green, then it would be easy to come up with a mask pattern that worked.

What intensity is the white subpixel at when displaying 100% red, blue, and green?

However, another thing to keep in mind is that emissive displays like plasma and oled don’t have subpixels that work the same way as those on an LCD. My plasma for example has its own bloom effect where subpixels are affected by the intensity of adjacent subpixels, so mask effects get blurred and it just looks like you’re darkening the image. I don’t have an oled but I suspect it might work in a similar way.

It’s also worth noting that almost all of the color and brightness enhancing stuff has to be completely disabled on a high-quality display with a good contrast ratio as it just makes the image quality objectively worse. All of the experiments I’ve done with shaders on my plasma TV confirm this. The color/brightness enhancing stuff is really there to compensate for the shortcomings of LCDs.

My advice for those with emissive displays (plasma, oled) is to just add scanlines, beam width dynamics and some horizontal blur while disabling anything that alters brightness, contrast or color. Standard gamma correction should still be applied (2.4 for CRT gamma and 2.2 for output display).

4 Likes

About that,be aware that some older shaders doesn’t apply real gamma correction.Some uses code that combine gamma input and color intensity (trick to make bloom,glow or else works normally). But the problem is that 2.2- 2.5 values are actually false gamma correction with desaturate colors (for the reason above). Here’s an exemple for crt-aperture, if you don’t care about bloom and want normal colors and gamma, change 2.2 to 4.4 and 2.5 to 5.0. It depends how shader was coded.

1.Default preset with diffusion disabled and 2.40 - 2.40 gamma. https://pasteboard.co/IV04d6C.png

2.Same with gamma 4.40 - 5.00 this time. https://pasteboard.co/IV042Mf.png

Same problem with crt -royale, srgb_framebuffer must be set to = “false” in all passes and float_framebuffer to = “true”, after that you can change static const float levels_autodim_temp to = 1.0. All of this will fix black levels,loss of details,colors, and brightness loss between passes. And of course don’t forget to make your own gamma correction even if your numbers are 3.80 or 4.00 etc . 2.2 doesn’t necessarily equal to 2.2 depending shaders. I hope it will help some users. :man_teacher:

6 Likes

@ProfessorBraun

That’s some interesting information…

I’d love to hear @hunterk and @guest.r input on this as well.

3 Likes

Yeah, gamma is a bit tricky to understand. Let’s say most of the non-crt ond some of crt shaders don’t use any input/output gamma transformations and the image looks correct.

But it’s very nice to do the transformation with crt shaders, because the horizontal filtering is done “CRT properly”, scanlines look OK and masks aren’t that heavy (speaking 0.3-0.4 CGWG mask, 0.5-1.5 lottes masks etc.).

Depending on the gamma setting of your final display the output gamma could be a bit lower, like 10%. This produces a stronger contrast and more saturated colors.

A combo of 2.4 in and 2.2 out is very common, but it could be like 3.0 and 2.7 also etc. - if you like it.

In some of my shaders scanline functions already add extra saturation and contrast, so the combo can be neutral, like 2.4/2.4.It’s OK to put this as a personal preference.

6 Likes

By the way I like how we can control saturation, gamma,color profile etc on your shaders, it’s important to have possiblity to adjust those things for me. Yes I agree.

Edit: crt-guest-dr-venom https://pasteboard.co/IV0JTJE.png :video_game:

5 Likes

I dig the look. But I can’t really achieve it. Could you please tell me what settings have you changed here?

1 Like

It requires some tweaking. First you need to lower the interlacing trigger resolution, so you can have “interlacing” instead of scanlines.

Then you can select Interlacing mode 2.0 or 3.0.

Next bloom is to be increased, prefered with masks 1.0 to 4.0.

Personally i like this setup with less horizontal sharpness.

1 Like

Inspired by this post I started to test washing out the blacks in my shaders and found a few surprises. Similar to the D93 temperature discussion we had a while back, I think that retro games also accounted for the extra brightness of CRT displays and made the content darker in compensation. Until now I was lowering the CRT gamma from 2.50 to 2.35 by feeling, but that didn’t deal with the crushed blacks, now gamma is back to 2.50 and blacks are lifted 0.1 points.

A few examples:

5 Likes

That’s an interesting idea. I know I used to play a lot of games with the brightness turned up since it let me see things that would normally be hidden, like secret paths that lead off of the map in JRPGs, but until they started including brightness guides and settings within the games (like later Resident Evil games), I never really knew what the intended brightness would be.

3 Likes