Mega Bezel Reflection Shader! - Feedback and Updates

Thanks for sharing this, I love the channel guy’s voice and an interview with one of my favorite shaders creator is a cherry on the cake.


Oh yeah most definitely. I knew this guy’s channel would eventually get bigger in time, now his channel is becoming one of the “go-to” channels for RetroArch related stuff. He makes the content and in return we get more traffic directed our way and it’s a all around beautiful thing.


:100: I do like how clear and concise things are explained, and the vibe is very relaxed/relaxing 10/10 a thumbs up from me :+1:


Hey guys. I am using the Duimon-Mega-Bezel pack and I keep getting a load failure error when trying to load any of the Atari Lynx presets (Advanced, Standard or Lite). All of the other shader presets seem to be working great. I may to change some settings on my end. Would appreciate any help. Here is what the log says:

[WARN] [Shaders]: Could not load root preset for #reference entry: “C:\Users\19494\LaunchBox\Emulators\RetroArch\shaders\Mega_Bezel_Packs\Duimon-Mega-Bezel\res\scale\Atari_Lynx$CORE-REQ-ROT$.params”. [ERROR] [Vulkan]: Failed to create preset: “C:\Users\19494\LaunchBox\Emulators\RetroArch\shaders\Mega_Bezel_Packs\Duimon-Mega-Bezel\Presets\Lite\Atari_Lynx\Lynx-[STD]-[LCD-GRID].slangp”. [ERROR] [Vulkan]: Failed to create filter chain: “C:\Users\19494\LaunchBox\Emulators\RetroArch\shaders\Mega_Bezel_Packs\Duimon-Mega-Bezel\Presets\Lite\Atari_Lynx\Lynx-[STD]-[LCD-GRID].slangp”. Falling back to stock. [ERROR] [Config]: Failed saving config to “C:\Users\19494\LaunchBox\Emulators\RetroArch\retroarch.cfg”.

1 Like

Welcome to the forum!

Thanks for posting here, it is much easier to provide support here than on YouTube. :grin:

I think it is likely you are using a version of Retroarch older that 1.15.0.

The Lynx presets use the newer Retroarch wildcard feature to provide automatic rotation.

Are you able to load the “Lynx_Alt” presets?

1 Like

23 posts were split to a new topic: Which gpu is best for the Mega Bezel

Greetings @HyperspaceMadness, not sure if this is a bug or a feature but none of the presets in /Variations/Screen-Only folder have MBZ_ at the beginning of their filenames.

This is in version 1.14.

Yeah this was on purpose to make the names shorter since they are variations rather than base presets

1 Like

Another question if I may @HyperspaceMadness. I would like to choose the optimal Display Gamut for my TV. I see in the [Color Tweaks]: there’s Display Gamut.

I think DCI might be a good option for my display since I believe it is a wider Gamut than sRGB and should be supported by my display, however a bit lower down there’s also [Signal & Color Space]: Display Color Space which also has a DCI setting.

Previously, I think I had both options set to 0 - sRGB. Would it be correct to set them both to DCI if I wanted to correctly enable this expanded display gamut?

Without fully underhand what I’m doing, setting Color Tweaks, Display Gamut to 2 - DCI and setting Signal & Color Space, Display Color Space to 1 - DCI seems to look okay. All of a sudden the colours pop a little more but not in an oversaturated manner. Edges also seem clearer and possibly a little brighter.

Is it that I am only now beginning to experience the full potential of my display?

I think you would only want to use one of these, the one is from Guest’s color correction and the other is from Grade.


Thanks man.

Here is the slightly confusing part. For me to use just one of these wouldn’t the other one still have to be on the default setting of sRGB?

Would this be correct/accurate if either one is on sRGB while the other is on DCI?

Wouldn’t having either one set to sRGB limit the colour gamut in such a way that colour information is lost and cannot be recovered even though the other setting might be at a larger gamut setting?

Please forgive my ignorance. Just asking out of curiosity.

You have to mind the offset from default colors. sRGB offset is very small, almost negligible, using DCI-P3 creates a notable offset to compensate you display’s gamut and produce more “faithful” retro colors.

If you use the option twice then the compensating offset is twice as big, resulting in desaturated colors.

So yes, it’s probably quite ok the way you mentioned.


Okay wow! This should really be in the manual. I wonder who’s going to write it?

I take it you mean with one set to sRGB and the other set to DCI (or whatever colour space setting is desired)?

Is there anyway to bypass this in either shader, so that we can have one set to “bypass/off” so there’s absolutely no offset, then the other set to whatever colour space we prefer to use?

Wouldn’t this be more ideal? @guest.r @HyperspaceMadness

You can use the -1.0 crt profile option in ‘GDV’ which bypasses color altering.


Thanks a lot @guest.r and @HyperspaceMadness. This has made a world of difference already! I used to compensate using the Saturation setting to get colours to where I think they should be but with this simple bit of knowledge and understanding my colours seem much better with Saturation set to 0.

1 Like

Follow up question for @Dogway, @HyperspaceMadness or anyone else who might be able to answer.


[Signal & Color Space]:

  • CRT Phosphor Gamut

, what does a setting of 0 represent and what do the negative values represent?

Some of these negative values look good by the way.

What grade do you refer to?

For the newest one the settings are explained here

-2:CRT-95s -1:P22-80s 1:P22-90s 2:NTSC-J 3:PAL

0 is noop, as depicted in grade-no-LUT with everything off by default.

1 Like

Thanks for the quick response,

I’m talking about the Grade in the latest Mega Bezel Reflection Shader public release v1.14. So that would be the “old” Grade.

So these are for the “old” Grade?

Do these require any additional user supplied LUTs?

The new grade. You can find details of the gamuts here:

And this is the enum:

if (crtgamut == -3.0) { m_in = SMPTE170M_ph;         } else
if (crtgamut == -2.0) { m_in = CRT_95s_ph;           } else
if (crtgamut == -1.0) { m_in = P22_80s_ph;           } else
if (crtgamut ==  0.0) { m_in = sRGB_prims;           } else
if (crtgamut ==  1.0) { m_in = P22_90s_ph;           } else
if (crtgamut ==  2.0) { m_in = P22_J_ph;             } else
if (crtgamut ==  3.0) { m_in = SMPTE470BG_ph;        }

As you can see 0 is sRGB (noop) and -3 is the SMPTE 170M standard not measurement and average inferences like the P22 series or CRT_95s.

Old grade had FCC which fell in misuse around 1979. It also had single measurements of NTSC-J (-2 and 2) and P22 (2 and -3).

1 Like

Something strange has changed when I adjusted my PC Power settings to performance and updated my Nvidia drivers.

I am now getting a lot of moire, where’s before it was barely perceptable.

Is there a work around?