HSM Mega Bezel Reflection Shader! - Feedback and Updates

Nerdy correction: color temp should be 6504 (D65) :nerd_face: :stars: :rainbow:

2 Likes

So do you think the default grade color temp should be 6500 for the Mega Bezel?

I had set it at 7000 because it seemed better in some quick eyeballing tests

1 Like

I’m doing some experimentations with the examples. At the moment I’m trying to edit the Orionsangel/SuperMetroid.slangp preset with some other bezel images I have.

As a first experiment, I’m trying to make a vertical bezel. So I just substituted the referenced images:

ScreenPlacementImage = 1943.png
BackgroundImage = 1943.png
TopLayerImage = 1943.png

Then somethign weird happens. If I load the modified preset over an horizontal game, such as Black Tiger, the image is visible (though not correctly positioned, of course).

If I load it over a vertical game such as 1943 the image is not visible at all (I only see the shader generated border and reflections).

1 Like

Could you post some screenshots?

Sorry, I realized it’s that you need to set the

BackgroundVertImage rather than BackgroundImage

Basically when the screen is horizontal it uses BackgroundImage, and when the screen is vertical BackgroundVertImage is used

3 Likes

Thanks. It’s very impressive.

The #reference language directive makes the per-game presets very concise. And the magic shader screen/frame auto resize feature is wonderful.

I’m delving in the files a little bit and then if I have time I’ll try to make up some script tool to bulk create shaders presets for each bezel overlay I have.

3 Likes

You might be interested in this, it’s what I use to assemble the base Mega Bezel presets

2 Likes

I’ll surely look into it, thanks.

2 Likes

Interesting, it does remove the scanlines under a certain resolution, but it also smooth out the picture, a kind of pastel like effect.

image image

image image

Looking in closer it seems like there is still a grid effect due to the emulated LCD grid (sorry I have no words for most of those things haha). Maybe it’s best to show you what’s troubling me.

Here is a plain blue background with the shader on, looks about what you’d expect.

image

But I’m using a 4K display, and when I record in 1080p of course the downscaling crushes the effect but more precisely introduces this RGB vertical banding

image

I would like to be able to turn off the effect precisely that’s causing this. Sorry for the inconvenience :sweat_smile:

2 Likes

What you are seeing is ScaleFX which is on by default in all the Mega Bezel presets, so scroll to near the bottom of the parameter list to scalefx which is just above grade I think and turn it off

so in the preset set

HSM_SCALEFX_ON = 0

This will remove the smoothing on the pixel art, or if you really want something raw sharp pixels you can use

HSM_CRT_ORIGINAL_AB_COMPARE_ON = 1
HSM_CRT_ORIGINAL_AB_COMPARE_SPLIT_POSITION = 100

This will give you the raw pixels

3 Likes

Hmm yes ScaleFX was the culprit for the smoothing effect. But unfortunately it doesn’t alleviate the banding effect from the downscaling. And using compare mode removes the problem but also removes a couple neat things that I’d like to keep like the color grading and the shadow around the edges. Maybe there isn’t a way to only remove this effect.

1 Like

You may also want to set the mask in guest-dr-venom to 0 or -1 (I forget) to remove the mask

Can you post images of before and after you downscale? I’m curious where the banding is coming from

1 Like

The two plain blue pictures above are exactly that. The first is a capture of RetroArch and the second the same but through OBS. This is probably a limitation of the downscaling algorithm they are using, but I don’t think another algorithm would perform any better.

2 Likes

Ok, but I would expect with the interlace 4 you would have no scanlines

I think you need to reduce the interlace threshold, and set the fake scanlines to 0 as well

HSM_INTERLACE_TRIGGER_RES = 200
HSM_FAKE_SCANLINE_OPACITY = 0
HSM_SCALEFX_ON = 0
shadowMask = -1

here it is without changing anything

And here it is with the trigger res lowered and scalefx off

2 Likes

One of the first things I did here, while starting my graphics for the Mega Bezel, was create a set of scripts to convert TheBezelProject overlays to Mega Bezel presets.

They are seriously out of date but shouldn’t require much work to bring up to speed.

One of the features is to set the color of the Bezel and Frame according to a color use percentage in the existing art. (Although this step can be skipped.)

I am AFK right now but you can get the link to my repo on my thread. (Link to my thread is in the top post here.)

3 Likes

Ah yes it was shadowMask that was creating the banding on downscaling, now it works as you’d expect thank you!

2 Likes

Thanks. I’ll look at them too.

I also shared some scripts here. Mostly they were focused on bulk editing existing bezels to better fit my likes.

For example, I really like OrionsAngels bezels, but for my tastes (ad bad eyesight) the viewport of a full 16:9 bezel on my laptop’s screen is too little, so I made tools to stretch the bezels so that the viewport is maximized, onfortunately cropping out part of the bezel art.

1 Like

I am no expert at scripting. My hope has always been that someone with real skill could take what I’ve done and make it something actually worth sharing. If you read the old posts, written while I was creating them, you’ll see I almost didn’t release them.

3 Likes

Hey, that’s the whole point of contributing!

Some have programming skills, some have graphic skills, some have little of either but lots of enthusiasm so they can help with housekeeping, documentation, data entry…

3 Likes

IMO If you are going for a base standard, I would go for 6504. Since you give the option, I think it’s not an issue.

3 Likes

My god housekeeping/documentation is always back burner-ed…

2 Likes