Mega Bezel Reflection Shader! - Feedback and Updates

Oh my god where has this shader been all my life. :jack_o_lantern:


:joy: Glad you like it! Let me know if you have any feedback :grinning:


Hey guys, sorry for another random question, I tried searching the word night in the thread to see how to tweak the shader for night mode, but ended up lost.

How do you go about making the shader night mode?


Look for this:

 [STATIC LIGHTING]  Night Lighting Opacity

and turn it up to near 100 :slight_smile:


Greetings, @HyperspaceMadness . Can you please tell me where can I get my hands on that exact same texture of your screenshot? With the PS and Sony logos, power/reset buttons, etc?


Hi, this is one of @duimon’s awesome graphics, he has a thread here where he distributes these graphics and some presets for them:


@HyperspaceMadness Thanks man! I managed set BackgroundImage successfully but I can’t make DecalImage and LEDImage work. They simply aren’t rendering, it’s not there. I dunno it it’s some beetle hw core option interering of some other thing. I’m using RA latest nightly, do you know what could be the problem? thanks in advance.

edit. I went back to the version release notes and found out about the new scale and offset properties. I just had to zero the Y decal offset and set both opacities to 100. Now everything is fine.

Thanks a million for this a-w-e-s-o-m-e shader my dude. If I knew things like that were possible I’d have left epsxe behind waaay sooner =). Keep up the god’s work!


Glad you like it :grin: And that it helped you get on board the good ship Retroarch :wink:

The shader pipeline in Retroarch is really what tips the scale for me into almost always wanting to use it for emulation. The fact that it’s flexible and extendable and can be reused between different game systems is really great.

The Mega Bezel is still developing, so some settings are still changing from time to time usually the things that have been there longest are the least likely to change.

There will be a bunch more image layering goodness coming soon, helped along by a lot of great input and requests from @duimon.


This looks amazing. The whole shader pack is amazing actually.

Would it be unreasonable asking for the preset file. I know it’s not that hard to do but I kind-of don’t want to have to fiddle with crt-royale to get to that nice result. Yeah, call me lazy!

Maybe not the preset files but at least the various settings/variables changed and their values.



Doing some tinkering again :slight_smile:

Question on the brightness of the bezel reflection, I would like to tone down the brightness of the reflection (by a lot) when I have my monitor backlight at max setting, what would be the best way?

The reason is:

My monitor is something like 350 cd/m2 at max backlight setting, and sometimes I want to crank it up there because of strong scanlines and mask setting I have in a particular shader setting to compensate for. The shader scanlines and mask dim the screen by quite a bit, so the game screen is then OK brightness wise. However, since the bezel is without scanlines and mask, the brightness of the bezel reflection is much too bright with backlight at max setting. It becomes unrealistic bright compared with the game screen (that has the scanlines and mask). This is particulalry noticable on white screens.

Some additional thoughts on this:

A real CRT is around 125 to 150 cd/m2 max brightness for normal settings (dim room setting). So on a real CRT the bezel reflection for full white screen is less or equal to 150 cd/m2.

However on my LCD, with the backlight at max setting, the bezel reflection for full white screen is equal to 350 cd/m2 : way too bright, it hurts the eyes a bit. So I need to tone the bezel reflection down by about half in brightness to become realistic again.

Is “[Reflection Global] Global Gamma adjust” the one that I need to change or are there other parameters I could/should tweak also to achieve my goal?

And one other question: where did the gamma_in from the guest-dr.venom shader go? Is it now hardcoded (at 2.4) in hsm-guest-linearize.slang?

FragColor = pow(vec4(texture(Source, vTexCoord).rgb, 1.0), vec4(2.4));


Hi @rafan, the way to dial down the reflection is to reduce


0 will be no reflection

If the bezel graphics themselves get too bright because of the high backlight then you can adjust


The Gamma setting for the CRT screen can be found in the Color Correction/Grade parameters:

[GAMMA]  CRT Gamma 

Let me know if you have any other questions :slight_smile:

Hi, how to remove the bilinear filtering effect in the hsm mega bezel reflection shader. I love this shader but for 2d games like sonic and Mario i want to remove this bilinear filtering effect. Please help me.

1 Like

Hi, I’m not sure what bilinear filtering effect you are talking about, can you elaborate and post an image of what you’re seeing?


Check your video settings. I think by default AR applies a filter of some kind.

1 Like

With the hsm shaders i get bilinear effect on games like screenshot

With hsm

Without hsm

With hsm

Without hsm

I hope you will understand


Ok thanks for the screenshots, I’m not 100% sure what is going on, but this gives me more of an idea.

Which Mega Bezel Preset are you using?

The Mega Bezel uses a scanline Shader which tends to soften the image and show horizontal darkened lines. This is to imitate what the CRT’s of the day looked like.

But like @Arviel said you should make sure the Bilinear Filtering is OFF in the video settings.

1 Like


I would like to add, as it seems you are using no shader at all in your screenshots, that there are a ton of options in the shader parameters,

scanline depth and brightness, screen curvature, screen smoothing, color balancing, de-dithering, etc…

all of which will you can play around with to your liking. If you play around enough, I think you will like the end result more than what you are used to, it will be tailored to your taste. :grin:

1 Like

I managed to remove the crt scanline effect successfully but not the bilinear effect. In video the bilinear filtering are off. And i use “hsm-mega-bezel-reflection-crt-easymode-halation.slangp”.


ah if you really want big square pixels and are changing stuff inside presets and shaders then the thing to change would be

shader18 = ../bezel/shaders/HyperspaceMadness/hsm-easymode/hsm-crt-easymode-halation-with-scaling.slang

filter_linear18 = true

and change this to false (Which should give nearest neighbour scaling), and this should would probably scale up with square pixels , not sure what the reflection is going to look like but :woman_shrugging:


Resolved. With the sharpness horizontal and sharpness vertical set to 1.00, i almost managed to remove this effect