Mega Bezel Reflection Shader! - Feedback and Updates

Yeah, it’s set to 33.3 because it is counteracting the 3x scale which happens in scalefx. Also in my testing it seems to match the amount of blurring which happens to the non-smoothed presets.

Do you find the 39 value matches the non smoothed preset better?

1 Like

I think this might be spot on here as I needed to use I think a NTSC Resolution Scaling value of 0.3333333 in order to get the waterfall in Sonic The Hedgehog to blend properly as well as have the rainbow artifacts in their correct orientation. Whereas with the other NTSC presets which didn’t use ScaleFX, a value of 1.000000 did the same.

1 Like

Which is wich?

6 Likes

Are you sure I’m eligible to participate? Lol

They look really close as in extremely close. Great work! I think I can confidently tell which is which though.

You might need to have both pictures slightly out of focus to “fool” the more discerning eyes but without zooming I’m not so sure if I could pick either one out.

I think you can have some fun with the folks over at r/crtgaming with these comparisons.

Many of them might actually appreciate such a close and accurate rendition of a CRT like image.

Then there’ll always be the zealots who might emerge out of the darkness, pitchfork in hand shouting, “Yeah, but how is it in motion?”

3 Likes

Wait. I will post some in full screen. Both taken from the camera… Hold my beer :beer::rofl:

1 Like

1 Like

Well the phosphors in this pair are definitely better in the focus trickery department but besides the slight differences in saturation and colour temperature which could go either way, the huge giveaway to me is the unrealistic perspective and excessive warping due to the use of (“fake”) 2D Curvature. On the real CRT the curvature and warping would vary depending on our viewing position/angle or the perspective of the camera.

Other than that (and that’s a huge giveaway by the way), it looks almost perfect to me

1 Like

Well I made the curvature on purpose for the foto. Although the real CRT has more curvature on the photo.:sweat_smile:

1 Like

I like setting HSM_CRT_CURVATURE_SCALE = "50.000000" to flatten it out a bit and to have the corners cropped, I think it makes it look more natural that way. (I also set HSM_CURVATURE_MODE = "3.000000" and HSM_CURVATURE_3D_RADIUS = "300.000000" but not sure if that matters as much)

Definitely try playing with the curvature scale to find a good balance.

2 Likes

This was my initial assessment of the above pair of photos.

Potential Spoiler Alert

"I’m confident that the real CRT is the photo on top because of the curvature. The curvature in the four corners looks equal, if looking at a real CRT spot on, center, the curvature and warping will be at its minimum so you’ll hardly see any warping or bending of the horizontal lines. This is because in the real world, the screen curves in the z-axis. Using 2D Curvature, the screen curves in the X and Y axes unfortunately.

I think the only time you’ll notice that kind of curvature on a real CRT would be if you’re viewing from an angle that’s not dead center and level with the screen and in a case like that the curvature will be more pronounced near the side that’s closest to your eyes or the camera while appearing less curved in the more distant plane.

I may not be 100% accurate or scientific in my assessment or my terminology but what I’m basically trying to say is that for me 2D Curvature usually results in an inaccurate perspective as well as inaccurate warping of the horizontal and vertical lines on the screen, not to mention the warping of the mask itself or if the mask isn’t being warped, a mismatch between the mask and the warped graphics and it’s something that I can notice and there are even worse artifacts when motion comes into play."

However on taking a deeper look, I’ve realized that I was actually wrong and the CRT is definitely the second picture.

This is because on further investigation, I’m seeing some elements that would only be present on a real CRT.

In terms of the above “essay” on 2D Curvature and perspective, I still think there’s a lot that’s valid there. It could just be that @RetroGames4K skillfully adjusted his perspective either inadvertently or deliberately and that is reflected in the first photo. This is because perspective is also at play because this is a photograph we’re talking about. Perspective warping is not exclusive to CRT’s or curved screen. Good Job “fooling” me initially @RetroGames4K but the CRT is the picture below.

I’d be happy to tell you what gave it away if you would like to know.

They’re extremely close though. Almost too close to call.

1 Like

ok thank you. And what about the sega luma fix and sega brightness fix options? Do we need to use both?

I find the image better with just sega luma fix enabled for sega genesis titles i tried it on.

As for the smooth presets, i use a smooth preset and disabled the smooth effect, which should make it a non-smoothed one? in that case i found on the sonic waterfall to not work on the waterfall itself, but for instance the rings, and sonic itself. In the case of i need to load a non smoothed preset then i still didn’t try the res upscale for them.

You are wrong. The bottom one is the CRT :joy:.

The angle of the photo is taken a bit underneath, that’s why you see curvature on the real CRT.

I’m using 3D curvature.

Yes :rofl:. That’s the point, I wanted to make a tricky photo, even the photo on the top is taken with higher iso, so It wouldn’t be darker.:laughing: Also the real CRT is emulated on Dreamcast, and the whole image is not full screen. It makes the game a 5:7 ratio I Think. Like in this full CRT image…

2 Likes
Potential Spoiler Alert

I might have been wrong initially but it didn’t take me long to see my mistake and correct myself. I just left my initial assessment in place instead of deleting it so you could have seen my thought process.

After noting my error, I correctly stated that the CRT was the photo on the bottom.

Why do you still say that I was wrong when I noted my error and immediately corrected myself (before you gave the answer)?

Would you like to know how I was able to tell that the second photo (the one below) was the real CRT?

1 Like

One of these is from Grade and the other is provided by the CRT-GUEST-ADVANCE shader. Since these are separate shaders you would only need to use one or the other.

You’re free to use both or neither if you like though. Use whichever looks and feels best to you. That’s the power of HSM Mega Bezel Reflection Shader’s flexibility and customizability.

Sorry I know. I relized after writing it. But also did want to explain every part. Don’t worry. It’s just fun. The only difference I see really is colour and brightness. But for anything else is almost the same. In mask pattern is almost identical. So in that I’m ok with. Just a few small tweaks and I’m ready to go with this setting.

1 Like

The giveaway has nothing to do with your settings though. It’s actually something that’s unique to the CRT that is yet to be emulated by the shader. Perhaps this might be one of the last missing links that will finally bring perfection?

Potential Spoiler Alert

On the real CRT, there are these grey vertical lines which are probably from the mask structure itself, which are visible in the dark areas.

Another giveaway is the power bar in the Shader photo. Elements like that on SNES games are not always rendered correctly when using certain mask settings unless the image is sufficiently scaled to provide enough pixels.

In your photos though there seems to be some unevenness in the power bar even in the photo of the CRT. Not sure if they look identical in person.

1 Like

Basically Sega hardware has white not at the top value of 255 like everything else, instead white on Sega consoles was like 248 or something, so when playing through an emulator the brightest white will not appear as white as it should. The luma fix stretches the brightness of all values so that 248 lands at 255.

So you should only ever use one. I would suggest using the grade parameter rather than the guest parameter, they both do the same thing, but in the next release I’m going to have the grade parameter on for Sega cores. I will probably also remove the guest parameter from my version of guest so it can’t accidentally be applied twice

4 Likes

Perfect, with sega cores, you mean it will automatically detect it? I currently play with genesis plus gx core on retroarch

Yeah, it should in the next release, and that is one of the ones covered :grin:

2 Likes

Hello. First, I want to thank you for your work. It really adds the nostalgia feeling that was missing in emulators. I’d like to submit a strange issue I’m running into. When playing NTSC Amiga games (RetroArch PUAE on windows), the screen size does not adapt automatically to the bezel (see screenshot). It does only happen with NTSC games. My configuration is 4K screen, RetroArch 1.15.0, PUAE core, Windows 11 (issue was also present when using Windows 10 and older versions of RetroArch). Do you have any suggestion ? Kind regards, Pierre