Mega Bezel Reflection Shader! - Feedback and Updates

Thanks @emmak50, that’s pretty good if your carpentry skills are anywhere as bad as mine. For my own setup I purchased the RecRoomMasters 40" vertical arcade cabinet, which unfortunately they don’t offer anymore. But a lot of people use the vCabinet plans, you can find links to some options on our verticalarcade.com site here: https://www.verticalarcade.com/resources. We have more than 130 overlays posted to our site now with more coming every week.

You can download all of our vertical overlays there but we also post frequently to this thread on libretro and people occasionally post about their vertical arcade cabinet setups there too: 4K Vertical Overlays thread.

I’m glad to see more people building vertical cabs like this. One of the reasons I started to make these overlays was to popularize this format, I personally feel it’s the best way to recreate the arcade experience in the home.

4 Likes

I agree. I had a massive 4 player cabinet with a real CRT but I only moved it out of the garage on a couple occasions. It was too much for me. This is more efficient, and vertical allows for raster horizontal and vertical and VECTOR horizontal and vertical.

Other things I recommend…

  • use LAG REDUCTION. It makes subtle but huge difference (if that makes sense). That’s why I rely on FBNeo so heavily.
  • I sprung for UltraStik 360s because I wanted an analog “leaf” switch feel for everything. My last cab was very “clicky” and it kind of took me out of the mood. (If you buy these, just be aware there are other issues, like it is not straightforward to map multiple controls to a single player like you might need for Robotron.)
3 Likes

Hi, @emmak50! Is this LAG REDUCTION that you are talking about the same thing as run-ahead or a different one?

Increasing Frame delay is also a nice lag reduction feature. Set the number as high as you can before you start hearing crackling audio.

1 Like

Yes, run-ahead latency reduction.

I think this is the missing factor when we re-visit games we used to like and decide they aren’t as good as we remembered. Part of the problem is that some of these games were super responsive in the arcade (or on a console) but when emulated there can be some input lag.

Just remember you have to set it for each game (so it can be tedious), and not all games can handle running it with a second-instance.

1 Like

Interesting about frame delay, I never played with it.

Yes, for me the perfect setup is : set run ahead by using the Pause and Advance frame options (or whatever it is called), for example : push “P” (the default Pause key) and then push the jump button on your controller ; then, push “K” (the default “Advance frame by frame” key) several times until your character starts his jumping animation ; if he starts jumping after, let’s say 3 pushes on the “K” key, you should set run ahead to 2 frames, so that your character will start his jump on the immediate next frame. Don’t set it too high or you’ll miss the first frames of the jumping animation, and you don’t want that.

Then, use frame delay and set it as high as possible before the game stutters or sound crackles ; now you’ve got the lowest latency you can get. It can even be better than the real hardware.

5 Likes

Thanks, just when I thought I had everything dialed in… :joy:

So, I’ve been playing around with Flycast and HSM shaders, usually I run Flycast at 640x480 internal game resolution, but this time I’ve been using 3840x2880 on my 1440p monitor with nVidia DSR at 5120x2880. My custom HSM_Bezel_CRT_Royale_Kurozumi gives REALLY weird results, like greenish color and really bad looking textures, so I switched to regular HSM_Bezel_CRT_Royale with a few tweaks, and MAN, the image quality is phenomenal !!

Here is a screenshot from Crazy Taxi I uploaded (I took several but the upload of such big sized pictures takes too long, so here’s only one :smiley: ) :

https://imgur.com/a/Qfy4f0Y

Edit : added some more screenshots :

1 Like

Hi, i’m having a problem adding a overlay to this shader now.

I don’t know which step i’m missing. I think i’m doing something wrong with the path, as i have them in overlay/final/SNES.png, how can i make a relative path? Is something like: …/…/…/…/…/Overlay/Final/SNES.png?

Thx guys, i want to update this thing.

2 Likes

Hi, where is your preset saved? The path will be relative to that folder

And yes that will make it a relative path

../../../overlays/mytexture.png

1 Like

I think i got it working, i see that you added a way to have only the reflections, very good choice!!

I’m gonna test it. wohooo PS: What preset would you recommend to use custom Background images and overlays from the internet? There must be a way to see the reflections on this custom background image, instead the bezel which is autoloaded by the shader. Thx again

Hello all. First I just want to give a huge thanks to HSM (and all the respective shader coders) for making all this possible. Mere words written here couldn’t possibly fully convey the utter joy you feel when you fire this bad boy up. You’ve gone beyond just providing something useful and bring actual joy into peoples lives!

Without knowing too much about shaders I was able to set up PS1 with a shader I like. Saved a core preset. Grabbed a graphic from Duimon’s repo and injected the path into the preset. Saved a core override… and I think I am done. I am guessing most consoles will be just as easy since the content is always output the same.

Mame is where the fun begins for me though. I realize that I will probably have to save per game presets and overrides instead and that’s fine although a little time consuming. The problem for me right now is that most horizontal games seem to load and the AR looks good but vertical games are being stretched horizontally like it expects me to rotate the screen:

I have integer off and scaling to 16:9 (which is my monitor resolution). Changing all 3 aspect values in the parameters does not seem to fix this. What am I missing?

3 Likes

Nice, it makes me smile to hear it brings you joy :smiling_face_with_three_hearts:

Hmm, Looking at the screenshot I can see that the Mega Bezel operated on it as if it was sideways, You can tell because the carbon fiber texture is squashed. This sort of remaping problem happens when the core and retroarch take the image from the core then re-map it onto the viewport with an additional transform, to rotate or flip the image.

This is the reason that no matter what you to tweak the aspect parameters did you got something funky, because in essence all the output from the mega bezel got rotated sideways and stretched to fit the screen.

When you don’t have this sort of bezel shader this transposition of the image buffer happens under the hood and the user is none the wiser

So I think it is something to do with the mame core, and core auto-rotation settings. Take a look at the core options in the quick menu and see if there is any auto-rotation type settings, and likely you will need to turn them all off. Then if the image shows up sideways you should use the rotation in the Mega Bezel to turn it vertical. This is what you need to do in Final Burn Neo as well.

Some of the cores work differently though, I use Mame 2016 and it works as I expect out of the box, vertical games show up vertical.

If you do make presets for vertical vs non vertical one thing you can do is separate your roms into vertical and horizontal folders and save a content directory preset for each, this avoids you having to do it for every vertical game.

1 Like

OK, thank you for the detailed answer. I am using the mame2003plus core so I guess it’s possible that’s the culprit? There is a “TATE” option that does turn the play field sideways, and then the “ROATATE” option works in the parameters but the screen is now upside down!

1 Like

Ok so it’s still flipping the frame buffer vertically. You can actually tell because the inside of the bezel on what is normally the top is darker than the inside of the bezel on the bottom, and of course the tube highlight is supposed to be on the top of the tube.

Try changing: [ VERTICAL FLIP ] Flip Vertical

Let me know if that works for you, and could you post a screenshot of the results?

It does flip where the reflections are… I would like to tone that down a bit, it’s a bit much during dark scenes… but that’s for another time:

1 Like

Hmm, ok if there isn’t another setting in the mame core to change then I think this is everything you can do with the mega bezel at the moment, I’m just surprised that this is the first time I’ve run into this for MAME.

Which Mame core are you using?

Could you try Final Burn Neo to see how that behaves?

Unfortunately the mame2003plus core uses a pretty unique romset. It’s based off of .78 but contains roms up to around .186 so I don’t think I would have good compatibility with other cores.

Damn, crushing defeat. :frowning:

1 Like

Ah not to worry, if there is a problem we can fix it, even if the core can’t be changed we can update the mega bezel to flip the image when needed.

You may want to try Final Burn anyway, it might work it’s not as picky about rom set version as some mame cores are

1 Like