CyberLab Death To Pixels Shader Preset Packs

Okay let’s do this:

https://www.youtube.com/watch?v=nPvfToo4scQ&t=77s

To calculate the TVL of a subpixel aware CRT Shader we take the number of vertical pixels of the display then divide it by the number of subpixels in the CRT Shader Mask Layout.

So for Mask 12 RRGGBBX @4K that would be 2160/7 = ~308TVL
for Mask 10 RGBX @4K that would be 2160/4 = 540TVL
for Mask 6 RGB @4K that would be 2160/7 = 720TVL
for Mask 6, Size 2 RRGGBB @4K that would be 2160/7 = 360TVL

for Mask 10 RGBX @1440p that would be 1440/4 = 360TVL
for Mask 6 RGB @1440p that would be 1440/3 = 480TVL

for Mask 6 RGB @1080p that would be 1080/3 = 360TVL

Is this correct @Guest.R, @HunterK, @Nesguy, @GPDP1?

1 Like

So basically, my CRT was the XBR960, similar to Mask 0, 1080 TVL - so that’s where I set stuff up initially for my 480p shaders so the TV --> CRT shader would seem right. This is so different from everyone else who were using SDTV’s instead so my eyes weren’t used to things yet.

Then I re-did my Presets and got used to playing at 720 TVL with Mask 6, 240p.

Then I re-did my presets with Mask 11 at 540 TVL - the X in RGBX for mask 10 bugged me when looking at solid color backgrounds.

I think when I started experimenting with CRT Yah that’s when I wound up finally adjusting to 308 TVL - and found Mask 13 matched that. The X in CRT-Yah’s MGX mask bugged me so prevented me from using its 540 TVL setup.

I certainly knew what 300TVL meant when we were talking in the Megatron thread. But I got myself confused in the last month or so as I took that break. #52soon

1 Like

Yeah, TVL is supposed to be a measure of how many distinct white and black vertical lines can be packed into a width that’s equal to the display’s height, and it’s used to measure the focus and precision of the electron beam. So, not exactly related to mask size, but sort of.

There’s a bunch of back and forth about it in this thread at the shmups forum: https://shmups.system11.org/viewtopic.php?f=6&t=67124

Apparently, TVL is usually bottlenecked by the electron beam’s dot size, which is typically 2x the size of a phosphor triad. We don’t really have that limitation in shaders, so just calculating the number of triads is a reasonable simplification, but it’s not exactly comparable to CRT spec docs, I don’t suppose. :man_shrugging:

2 Likes

How do you know that it’s the X that’s the problem when you can’t even tell (or at least tell us) if the CRT Shader Masks and Phosphors are properly aligned with the display’s subpixels?

Suppose if things are correctly lined up the spacing is less pronounced or at least is even/proportional? Do you know that the white subpixel in your BWRG WOLED display skews the subpixel spacing making a wider gap between the subpixels adjacent to the White subpixel compared to LCD subpixels? Imagine if this gap was next to the X (dark subpixel) gap that is drawn by the subpixel shader?

Also this hate for the X, do you know that a real CRT’s phosphors are separated by black mask material? If we remove the X then there would essentially be no Shadow Mask/Aperture Grille. How do you think that bodes for accuracy?

It’s not really a hate for it, it just doesn’t look right to me. I also test via SDR on my laptop. I mean unless masks are purely there for HDR implementation, am I missing that? :o

Without the X, it’s Mask 6. Which I believe both exist fur good reason.

I didn’t mean it literally.

That’s fine.

Okay.

Do I detect sarcasm?

I can think of one good reason. RGB is the only Mask Layout that would provide true 1:1 RGB Subpixels:Phosphors @ 1080p. If we tried to draw the black mask line we’d end up with RGBX which is 1080/4 = 270TVL. Very low and chunky with a lot of black on the screen.

Another good reason is that it can provide more variety at higher resolutions albeit at the cost of structural complexity due to a lack of resolution to proper draw and define all aspects of the CRT’s Mask and phosphor structure verbatim.

So don’t get me wrong, I understand that you’re used to the high TVL stuff and I’m not trying to convince you to like what you don’t like, I’m just discussing the merits of something in case you were wondering or just curious.

These are some examples of how bad things can look on WOLED when the subpixel alignment is wrong:

This is an example of how good things can look on WOLED when the subpixel alignment is as good as possible.

Note how much black is around both the CRT’s phosphors and the OLED’s subpixels. This is using RRBBGGX Mask Layout (or whatever secret variant of it Guest.R uses because Nesguy recently said he felt it was XRRBBGG).

You can see here for further recent discussions on the matter:

1 Like

No no. Was genuinely starting to wonder it as I typed. Especially after the last day with these.

Wow! I actually remember when that Devon guy posted those screenshots. Forgot all about that because I was worked on that Plasma TV Kuro setup for a year! (9 years when it came to movies)

1 Like

This may not actually be entirely correct. 2 pixel masks are there for a reason and the science is solid on them and they do actually work. The post I shared has a good breakdown of how a Green-Magenta Mask would be rendered on a 1080p RGB display. The spacing between the individual subpixels would be even as the mask layout would be exploiting the black gap provided by the switched off subpixels across 2 adjacent pixels.

1 Like

You must be 20x as frustrated as I am about OLED subpixel structure. I tried commenting about it on one of Vincent’s YouTube videos (HDTVtest) and the Comment Monsters lit me up for daring to mention it in terms of CRT Shaders!

1 Like

Not really, just realizing that very few seem to understand or care about this stuff but it is important from a preservation and accuracy perspective. I guess some people are still so blinded by the novelty of true blacks and better viewing angles, the lack of blooming and the idea of super fast pixel response times providing better input lag and better motion clarity that they miss certain other important pillars of accurate CRT emulation.

At least my contribution to these things is well documented. However, I came up with the concept of the using a fast moving rolling scanline instead of BFI to improve motion clarity and I asked HunterK if he could make a shader to do just that and he did and I tested it out on my 60Hz LG OLED E6P and it didn’t get around the refresh rate limitation and seem to improve motion clarity much and was a strobing mess because the beam (rolling scanline) couldn’t run faster than the content refresh rate and even if it could my display was still limited to 60Hz.

Then came SubFrame support.

Then came odd cadence BFI to prevent Image retention in LCDs.

Then came CRT-Beam-Simulator with no mention of CyberLab’s early concept and HunterK’s proof of that concept and I can’t find that shader code nor that conversation I had with HunterK which led to it.

I can’t remember if it was via DM on these forums or in a thread here or over on Reddit. At least there’s one person with can vouch for me.

I’m more upset with myself that I can’t find my receipts for that than what’s going on in the world of OLED.

1 Like

Dunno, but folks can always try to adjust the TVL with the Mask Zoom parameter. Personally i got used to it and i also don’t like to sharp edges on phosphors with very low TVL. Mask Zoom sharpen is also a handy functionality, especially with 4k displays.

2 Likes

I’m still playing around with it, and need to spend more time with that 240p test suite, but for the Legendary presets I’ve set Retroarch to 2500. Similar for the miniLED but I haven’t spent as much time looking at them.

This thing that stands out the most to me is the map screen for LTTP starts to look a bit off to me higher than 2500, I think that’s where I start to see some clipped whites/highlights as there starts to be this kind of whitish haze over the screen.

I’ll need to keep playing with it a bit. I feel like I need to spend a little more time dialing in the settings and I’ll try to get some pictures when I think I have it how I like it to show you how it’s looking.

And I’m definitely interested in looking into Shader Beam, I’ve spent a lot of time with his ShaderGlass tool.

2 Likes

Remember the numbers don’t tell you when you’re hitting the limits of the capabilities of your display, only your eyes will.

Also, Paper White Luminance has a much more significant effect on overall brightness than Peak Luminance in the older Sony Megatron presets. Peak mainly affects the brightest of the bright and the whitest of the white, so don’t hesitate to increase your Paper Whilte Luminance to as high as it takes for the image to be as bright as it needs to be within the observed limits of your display.

Yeah when using the Sony Megatron based shaders I’ve just set the Peak Luminance to what my monitor is, it doesn’t really seem to do much of anything, and the Paper White Luminance I set similar to what I have the Retroarch HDR brightness at, and I get similar results to the guest based shaders. I just really like the one I’m using from your Legendary pack so I’m mostly sticking with that for now.

1 Like

I’m playing around with the Guest Legendary presets on an LG C4 42" OLED, this is not my first time installing them but I’ve never really gotten them to look right (to me). Big disclaimer, I barely played games on CRTs as a child (and only on PC), so it’s hard to know from memory how games should look like, so I check videos on youtube for some games to at least have some reference.

That being said, I want to ask if the defaults for “CyberLab Guest 4K HDR Game BFI SNES S-Video Shadow Mask Sharp Smooth Advanced CAR10x9x” should look like this, or if there’s something else going on with my settings that’s messing with the final image? Also uploading some pictures (not screenshots!) after playing with the mask type, strength, scanlines, glow, and bloom (colours still need work). I feel like the defaults just look too dark, black, blocky, with “pixels” that are too big, even sitting a few meters away from the screen

https://imgur.com/a/2eLK51D

Huge thanks again @Cyber for your dedication and amazing work

1 Like

Download CyberLab_Guest_Legendary_Death_To_Pixels_4K_HDR_Shader_Preset_Pack_27-06-2026 and try some of the new Shadow Mask and Shadow Mask Fine, Shadow Mask Super Fine, Old Skool TV, Vintage Shadow Mask TV and BFI Vintage Old Skool CyberTron TV presets.

I realize you might have missed when I mentioned that “Sharp” presets are geared toward line art games and not games with a lot of shading and high colour counts.

In any case all of the presets with Sharp Smooth Advanced in their filenames can be easily adjusted to look smoother by setting Blending [No Blend|AA] to 1.

This is in the readme.txt Line 165:

Smooth Advanced presets have access to Anti-Aliasing/Smoothing. This can be enabled or disabled by toggling the No Blend/AA Shader Parameter.

Higher TVL presets would have finer mask features. Those would most likely have “Fine” in their filenames. Shadow Mask presets usually start off relatively fine by default so you may not see fine on most of those but that doesn’t mean that they’re coarse.

Those experimental SNES Shadow Mask presets which seemed to have caught your attention can be considered coarse but I don’t think I want to use that word to describe too many presets so I might find smething else. For me it was a wonderful learning experience in getting familiar with CRT-Guest-Advanced’s “new” way of creating Shadow Masks after really enjoying the old way in my CyberLab Neo-GX Preset Pack days.

I found some alignment issues at the TVL I was going for, which is what I might have used in my Megatron Shadow Mask Presets prior so I opted for the lower TVL as a start.

Only yesterday or the other day, Guest mentioned the Mask Zoom function and I have been playing around with it, only to realize that when I went down a notch using the Mask Zoom feature my Shadow Mask aligned better within the scanline so now finer Shadow Mask presets, which were my favourite to use in my Sony Megatron miniLED preset packs are now viable.

Another thing about those SNES S-Video Shadow Mask presets is that they were originally designed around CRT-Guest-Advanced’s new Bloom Pixel Sampling feature which smoothed, softened and blended the pixels a bit, however there were some artifacts being produced which made the feature untenable for my purposes so I disabled it, leaving all of my presets that had it enabled quit a bit sharper. Of course, I would have went into all of them and rebalanced things but there’s a vast difference in sharpness when Bloom Pixel Sampling is enabled and only that feature seems to look like that feature.

Concerning your brightness challenges, you can read over the readme.txt file and take a look at the following posts. There’s not much more for me to say or do about that.

If you still have brightness challenges, you can try my Mega Bezel 4K HDR Ready Presets but they’re currently broken and I’m working on fixing them.

In the meantime there are PVM/Pro Monitor Edition presets which are the opposite of blocky and have mask features that are so fine that they are essentially disabled in my previous miniLED Epic preset pack. You can try those as well.

Over at the Sony Megatron Thread is also a good place to find information about best HDR settings for LG WOLED Displays.

Again the correct Mask Layout for your display with my Legendary Preset Pack is BGR Mask Layout 1 and for my Sony Megatron based preset packs RWBG/WOLED. In some cases for example using Shadow Mask presets, the “wrong” layout might look better on your display so you can feel free to experiment and use whichever one looks best in a case like that.

You’re welcome

By the way, I forgot to ask, what do you have your Peak Luminance, Paper White Luminance and/or HDR Brightness Values set to?

2 Likes

Thank you, I’m having an easier time tuning the shadow mask super fine 27-06 preset and using the mask layout 1, I think my main issue were the scanlines. Also added a tiny amount of noise and rolling scanlines now

My HDR Brightness is set to 1400, I think it can go higher without clipping but that seems like a good value. I didn’t really have issues with the brightness in itself, just how the overall image looked, now with smoothing, smaller scanlines, and the correct mask layout+size, it’s looking plenty bright

1 Like

One thing you can do to make the scanlines look even better is to reduce the integer scale factors. Unfortunately for Shadow Mask and possibly also Slot Mask presets, if you lower this by 1 unit at a time, it might result in misalignment of the mask and scanlines. So for the SNES Shadow Mask presets which I currently recommend CAR10x9x you can try CAR8x7x and you should see a significant improvement in the overall look of the preset and the scanlines in particular. Of course the viewport will now be smaller but your display should also be able to hit higher brightness values at the smaller window sizes.

2 Likes

On a completely unrelated note, let’s pour one out for physical media:

https://www.reddit.com/r/digitalfoundry/s/jCkuqi0cIf

3 Likes

PSA:

4K 120Hz 10-bit YCbCr422 is viable with Mask 6 Size 2 aka RRGGBB Mask.

1 Like