New CRT shader from Guest + CRT Guest Advanced updates

Mask 6 at size 2 would be RRGGBB, while 12 (formerly 13) at size 1 would be RRGGBBX. I think that is what we’re looking at here. Whatever unit each letter represents in the triad is what we are seeing being represented in the images. Please correct me if I’m wrong.

We’re dealing with Mask 6 Size 2 level stuff here and it’s 4K alternative Mask 12 (formerly 13) Size 1.

So not subpixel level. I think we’re seeing 2 subpixels from neighboring pixels representing 1 colour of the triad. I’ll sure someone can correct me if I’m mistaken.

The real triumph here is that this is the first time I’m actually getting RGB triads to actually look like triads with even amounts of each colour and in more or less proper alignment on an OLED TV. Can’t you remember how crazy things used to look before this?

It’s proof that OLED TVs can in fact be suitable for displaying CRT masks (of at least certain types) whereas previously, I didn’t think it was possible.

It also brings to light that we should be using BGR for OLED TVs instead of RGB.

It still may not be perfect but it’s a huge improvement for OLED users.

All I probably need to do is increase the ISO on my camera but these shots were intended to analyse the structure and behaviour of the mask on the TV at the triad level and they served that purpose well.

I’m open to performing other tests if you would like to collect other types of data.

1 Like

I think it’s just the way the TV accepts the signal and presents it to the subpixel structure on the panel. The TV designers most likely didn’t design them with uses like this in mind so all they needed to achieve was paint the right colours at the pixel level, how they went about achieving this at the subpixel level would have probably been determined by different factors, including the characteristics of the technology.

I was wondering if it would be possible after learning more about the actual behaviour of these WOLED subpixels (not just brushing them aside due to RTINGS subpixel measurement images) if we can manipulate things at the Shader level in order to get them to output things the way we want or at least get some improvements over what is available today.

So I’m suggesting more experimentation.

Thanks a lot for the support and inputs @nfp0!

Looking forward to seeing some photos of your newer model OLED TV!

It most definitely is on. I’ve been using my OLED TV in my HT/Gaming PC setup since about February, 2016. I have no noticeable burn-in whatsoever. The only thing I noticed is that I have a dead pixel on the left edge of the panel. I hardly even see that.

I probably spend considerably more time with the default Mega Bezel carbon fiber background being displayed than before, but my usage is mixed because I also watch TV almost every day as well.

Still, I bought this TV to use it and enjoy it, I’m going to take care of it but I’m not going to sacrifice image quality and brightness by neutering my OLED Light level.

One thing I would strongly advise against though is attempting to play a game like Civilization 5 or 6. Those games suck you in so deep that they’re almost guaranteed to cause some sort of image retention because sessions can end up being extremely extended.

I mean I played about 2 games of Civilization 5 and did suffer some temporary image retention but the Clear Panel Noise (Pixel Refresher) took care of it.

I actively avoid that game though, although it’s one of my all time favourites.

1 Like

This obviously depends on your preferences. Pixel-Perfect native is unrealistic in terms of ratio in most cases (although some games can be drawn on that basis making it defacto a correction). Core provided should in most cases be more realistic. Some cores don’t implement correct ratios at all, requiring custom scaling.

2 Likes

That would not be possible. Mask 12 uses 2 pixels for each column, so that rules out any TV processing or subpixel arrangement.

Also, look at this screenshot: image

It’s clear the shader is producing RBG triads instead of BGR. Is there a reason for this @guest.r ?

2 Likes

No problem at all! I’ll be sure to post photos from my TV when I get the chance, to see if there’s any big difference in subpixel structure between WOLED panels. In fact… I believe I already posted them somewhere, maybe on another thread. The Sony Megatron thread, I believe :thinking:

But all things considered, I believe triads with 2-pixel-wide colors are good enough for WOLED panels because the fact of each color being composed by 2 pixels, halves the effect of the OLED subpixel structure and seems pretty invisible to me at normal viewing distances. And the fact that pretty much all OLED TVs are 4K, means everyone will use 2-pixel-wide mask colors on them. And also, I struggle to see any difference in switching between RGB and BGR modes from a normal viewing distance on my TV, which means subpixel stucture is not that important here, unless I wanted to use 1-pixel-wide masks, which are almost useless for 4K.

Yeah, same here. The only thing I keep on is the “Pixel shift” feature, because it doesn’t alter the picture at all, and helps greatly in reducing burn-in with fixed stuff, like a CRT mask. :slightly_smiling_face:

And yeah, Civilization games might really be worst case scenarios haha.

1 Like

It starts with red due to implementation. BGR is otherwise just a naming, there aren’t set ruls which color is the ‘first’ in row. Otherwise the layout is not to be changed to BGR if you use a RGB panel. The ‘last’ black pixel is there to ensure better subpixel spacing.

2 Likes

And also to be more accurate to real CRTs, as real CRTs do have a black space between the triads. At least from the CRT photos I’ve seen on this thread.

2 Likes

Those are the physical wires of the mask/grill aren’t they? As always, feel free to correct me if I’m mistaken.

I’m not sure if this is a major rule, since there are also small gaps between phosphors.

But LCD subpixel spacing issue is definitelly something to be considered. Problem is that we want to have RGB masks with nice spacings and currently the best solution seems to be RRGGBBX on 4k displays. Mask 10 with RGBX is already a bit excessive on ‘X’ (not this much again) if we are nitpicky, but produces a higher TVL rating.

Not to forget the magenta-green mask, which is quite nice for 1080p and very high TVL’s.

3 Likes

Would it be possible to make a mask RRXGGXBBX, This is a closeup of my CRT Sanyo Subpixels. As you can see there are black bars between subpixels…

2 Likes

the gap between the phosphors is only like 1/8 the size of the phosphor itself, so it would need to be something like RRRRRRRRXGGGGGGGGXBBBBBBBB to get the spacing right (and would need like a 20K screen).

If you did just RXGXBX, it would be super-dark, as the subpixels of your monitor would be like RXXXXXXGXXXXXXBXXX, or almost 85% reduction in brightness, and the subpixels would be spaced unevenly.

4 Likes

OK. Just wondering, because the black gaps seems to be half subpixels… mask 10 for me looks the closest look alike, but lacks of black spacing… mask 12 looks brighter, but I feel that the black spacing is less pronunciated…

1 Like

Why not adjust the deconvergence to create some more separation? Also keep any setting that increases horizontal blur to a minimum? If you move the outer colour stripes to the left and right respectively, I can see a little more space being created in between the phosphors and a reduction of horizontal space being created between the triads.

1 Like

What would it be the correct setting for deconvergence for that. Some settings a really difficult. And the correct gamma In-Out for an lcd 4k?

1 Like

There isn’t really a correct setting. You expressed that there were black gaps between the phosphors in your Sanyo TV that weren’t present in the shader so I suggested this because I know that each colour can be moved left, right, up or down independently. Hopefully this might allow you to get things even closer to your Sanyo.

It just takes some patience, reading, experimentation and asking for assistance like you’re doing now.

I don’t think there’s any one correct setting for that either. Sometimes you might need to adjust those things differently depending on the core/system you’re trying to emulate.

Adjusting one setting elsewhere like full strength Masks or dark scanlines can alter things so much that you might feel the need to increase the gamma In-Out.

You can use games and also the 240p Test suite as a guide and of course your Sanyo CRT as a reference.

As @guest.r has mentioned how useful Gamma Correct (Gamma_c) is, you can also get very far by leaving Gamma In/Out as default and making adjustments to that instead.

You seem to have things pretty close to your reference so it’s probably just a little fine tuning that needs to be done from here but many times when you push in one area, you can get some artifacts in other areas which might require tweaking even more settings until everything comes together nicely.

3 Likes

Ok. Thanks a lot…:smiley::+1:

2 Likes

I think I’m almost there, it needs a bit of tweaking. Thanks to all for the advice…:smiley:

8 Likes

I would just like to say how incredible it is that this kind of realism can be achieved, and the versatility is amazing!

When I first encountered CRT-Geom (Has it really been 10 years?) I would have never dreamed of this.

8 Likes

It’s looking real good! Very close! I encourage you to share your preset with the rest of the community as this is approaching reference level stuff that I am sure can benefit others as well.

One thing I might try if I were you is to try a Slot Mask Height setting of 3 instead of 4 because the Sanyo triads look a little stubbier than the CRT Shader’s.

You can also try a higher GSL Scanline Type which will enhance the appearance of the scanlines which can be more distinctly seen in the Sanyo photo.

Then you can lower the gamma_c a touch, just very slightly so the triads can more closely match the TV’s. Make sure you’re not using too much bloom. More than 0.15 might be too much.

You might also want to add a hair of vertical deconvergence just to take away the digital exactness of the vertical alignment of the “phosphors”.

Don’t forget you can control the Deconvergence Strength as well.

Remember a very little goes a long way.

I’m using HSM Mega Bezel Reflection Shader so at this point I might have added a little Simple Sharpness.

You can probably try bumping the Horizontal Sharpness and maybe the Subtractive Sharpness just a tad to simulate TV circuitry.

And the final icing on the cake can be a very subtle high resolution (setting 1), low strength (0.18 or less) of noise, again to simulate the analog circuitry.

Other than that, the saturation in the shader photos appears ever so slightly higher than the Sanyo CRT but it’s no big deal in my opinion.

5 Likes

I’ve tried lots of gamma combinations for my NTSC slotmask preset, but using gamma_correct is out of the question, as it creates lots of ugly artifacts. Or maybe I’m using it wrong, but I don’t think it’s working as intended. Same goes for Bright Boost Dark Pixels. :slightly_frowning_face:

Maybe it’s because I’m using a 4K mask?

The only way I managed to get the colors and gamma to look the same as the no-shader original picture was to leave gamma input at 2.0 and gamma out at 3.0, but I see you recommended against such big ratios because it alters how things are processed.

I could lower gamma input instead of increasing gamma out so much, but you said it affects how gloom and glow are distributed too.

I’m sorry for bothering you so much with this, but if you had to fix the gamma of this NTSC preset, how would you do it?

#reference "crt/guest-advanced/crt-guest-advanced-ntsc.slangp"
quality = "0.000000"
ntsc_sharp = "-8.000000"
mask_bloom = "0.950000"
gsl = "-1.000000"
shadowMask = "12.000000"
maskstr = "1.000000"
slotmask = "1.000000"
slotmask1 = "1.000000"
slotwidth = "7.000000"
double_slot = "3.000000"
mclip = "0.000000"