Mega Bezel Reflection Shader! - Feedback and Updates

Hmmm :star_struck:

How about this game I didn’t know about?

Demon Front (Arcade Mame)

6 Likes

Seems like my notification settings for the thread were inadvertently changed for a while. That explains a lot. It’s nice to finally be back.

4 Likes

thank you for the help man!

i found a list of the vertical games and after a bunch of script magic i managed to create a “romname.slangp” for each of them divided by platform and vertical/horizontal i added a custom platform background in each shader cfg (example: BackgroundImage = “Media/Capcom_CPS1_v.png”) added glass effect etc so i filtered each shader by cps1 / cps2 / cps3 / neogeomvs /neogeoaes and for each platform i filtered each ones were vertical. A bit more work and script magic than i expected but, so anyway the end result was this:

11 Likes

Hi all.

First off, I’m really sorry to be ‘that guy’, but after absolutely ages fiddling about I still cannot get these working, and I really want to (they look so good!).

Brief summary of where I’m at:

  • I’m using Metal (I’m on an Apple Silicon Mac)
  • Any of the presets which have ‘Glass’ in the name will work
  • None of the other presets will work, including those from CyberLab which I downloaded separately from the CyberLab thread
  • When I try to use any preset which does not have ‘Glass’ in the name, I receive the following error - ‘Failed to apply shader preset - [filename of preset]’

Please find my logs at the link below:

I’d be hugely appreciative of any help finding out where I might be going wrong.

Many thanks in advance.

2 Likes

Hi and welcome to the forum!

So you aren’t doing anything wrong, this is a problem with the retroarch Metal driver that is failing to compile one of the shaders,

1. [ERROR] [Metal]: unable to compile fragment shader: Compilation failed:

 * program_source:1619:277: fatal error: bracket nesting level exceeded maximum of 256

2. program_source:1619:277: note: use -fbracket-depth=N to increase maximum nesting level

I need to investigate to see if the Metal driver’s shader compiling can be adjusted to avoid the error.

4 Likes

Thanks for the welcome! I’m new to shaders and I’ve been doing a lot of reading here today, still trying to wrap my head around everything but I’m excited by the prospect of simulating CRT or handheld displays rather than being stuck with raw pixels.

Thanks also for letting me know the reason for the issue. Glad to hear I’m not doing anything wrong, at least.

I know Metal is much less popular, so no worries if it can’t work or it’s a lot of effort to make it work. Selfishly though it would be great if Mega Bezel can be made compatible! I’ll keep an eye on this thread for any updates :slightly_smiling_face:

3 Likes

At least they seem to load and work with the Glass Presets so you can use those in the meantime.

You can actually replace the shader filename MBZ__0__SMOOTH-ADV__GDV.slangp with MBZ__0__SMOOTH-ADV-GLASS__GDV.slangp in my presets if you wish to try them.

If you don’t want the Glass effect, you can try disabling it by going into:

Shader Parameters --» [Aspect Ratio]: 

 Type - Full (6.00)


 Then RetroArch Settings --» Video --» Scaling


 Set Integer Scale  - On


 Integer Scale Overscale  - On


 Aspect Ratio - 4:3 or Core Provided


 Crop Overscan - On

I haven’t tested any of the above with the Glass Preset so there’s a chance that it may not work.

1 Like

Thanks for the above tips - just been having a play around with a bit more success this time.

I don’t feel like the Glass effect is for me personally, so I tried the settings you suggested and they worked great to remove it.

I then tried changing the filename in your presets, as you suggested. This worked too, kind of. Once I’ve changed the filename to the Glass ones, that preset will now load, instead of giving me a ‘Failed to apply shader preset’ error.

Unfortunately though, the performance is really bad. I feels like it’s probably 25% below the speed that it should be and the music is all messed up.

So far I’ve tried CyberLab__Arcade-Sharp__PVM-Edition__ADV.slangp and CyberLab__Composite-Sharp__PVM-Edition__ADV.slangp, and a few other ones that I can see reference back to those. The result, in terms of the greatly reduced speed/performance, is the same on both and any that rely on them.

Not sure if it’s of any use but here are my logs, anyway, in case they’re of interest:

1 Like

I’m glad you at least made some progress. Have you tried the MBZ__5__POTATO__GDV-MINI.slangp base preset?

If that works for you, you can try my presets in my MBZ__5__Potato_No_Reflections folder. You can use them in conjunction with Blargg NTSC Video Filters, including my Custom Blargg Filter Presets for a decent scanline and mask look.

Feel free to give them a try and let us know if you get good enough performance out of them.

1 Like

Hello Mates! First time poster here :see_no_evil:

I recently discoverd this project and was immediately impressed, so thanks for the great work. I basiccally habe one question thus far:

The thing is, I’m a bit confused regarding the correct paths. I read the github descriptions of HSM Mega Bezel and of Duimon’s Mega Bezel Graphics and Presets and also read through the associated threads here.

As far, I understand that the main HSM Mega Bezel Stuff shoud be in Retroarch/shaders/shaders_slang/bezel/Mega_Bezel. But for additional presets (I’d like to use the ones by Duimon), HSM’s github page states that the path Retroarch/shaders/Mega_Bezel_Packs/... should be used. But Duimon’s github says Retroarch/shaders/Mega_Bezel_Community/Duimon-Mega-Bezel should be used. I also read in the concerning threads here about both folder paths (Mega_Bezel_Packs and Mega_Bezel_Community) beeing the new standard.

So which path is better now? Could someone please clarify this? Maybe I’m missing something :upside_down_face:

2 Likes

I’ve just given MBZ__5__POTATO__GDV-MINI.slangp a try, and it did load, but still at low (but improved, probably 90%) speed and this time with a massive amount of flicker.

I then tried some of the other presets that get bundled with the Mega Bezel, like N64__STD.slangp, which depends on MBZ__3__STD__GDV.slangp. I switched out MBZ__3__STD__GDV.slangp for MBZ__3__STD-GLASS__GDV.slangp first of all, and got the very slow results that I referenced in my previous post (about 75% speed I would guess).

I then tried switching MBZ__3__STD-GLASS__GDV.slangp out for MBZ__5__POTATO__GDV.slangp and, again, improved but slow speed of about 90% plus lots of flicker.

I took a quick video of this last attempt, using MBZ__5__POTATO__GDV.slang, so you can see what I mean (the results are almost the same using MBZ__5__POTATO__GDV-MINI.slang, except the flicker is a bit faster). It’s at the link below.

Warning: this video is very flickery and could be seizure inducing in the wrong person, my eyes feel funny after fiddling about recording it! :dizzy_face:

https://www.veed.io/view/6757ac95-193e-43e8-ad5c-df6da4fadbef

I did play around with a few shader parameters to see if I could improve things, but with no results. I’m not nearly technical or knowledgeable enough to know what the problem is :sweat_smile:.

I think at this point I may need to put Mega Bezel to one side and look at some of other shaders on here and whether I can get better performance out of those? Interested in any views anyone might have on this and which might be a good choice to start with.

My ultimate objective in all this is to get realistic CRT effects suitable mostly for PS1/N64 generation, and realistic reproductions of GBA and NGPC handheld screens. My thinking was that the M1 Pro chip in my computer should be beefy enough to achieve good results, but of course that’s not what’s happening so far :laughing:

EDIT:

@boltzm4nn

I know this confusion regarding paths as a fellow newbie. For what it’s worth, when testing the CyberLab packs, I have been using the following path:

Retroarch/shaders/Mega_Bezel_Packs/…

And it has worked. So I would start with using that and see where you get to (NB someone more knowledgeable might be along shortly with better information!).

2 Likes

I haven’t updated my GitHub readme. Technically the folder name is up to you. Our choice is just a recommendation, it is the folder depth that matters.

Many users aren’t familiar with relative paths so a recommendation keeps thing clean and tidy.

My forum thread explains it better.

I hope this doesn’t add to your confusion. :wink:

Just using Mega_Bezel_Packs, and not thinking about it too much, is probably the easiest route. :grin:

Edit: I have updated my GitHub readme.

3 Likes

@HyperspaceMadness love the look of the MDAPT and PS1 Box filter, is this pair selectable in the mega bezel? Want to try them just by looking that third image

2 Likes

Yes, just load an ADV preset and then the parameters for MDAPT are way down the list nearer the guest parameters

2 Likes

Thanks for the warning. That looks like software BFI is on, very strange. At this point, there are still a number of options you can try that might take you over that next 10% or so.

There’s standalone GDV-Mini. I’ve also heard about Zfast and there’s good old CRT-easymode and many more. Look through the Shaders_Slang/CRT folder. You can also pair the Shaders with Blargg NTSC Video Filters for a nice effect.

I’m not sure if it’s the M1 Pro’s lack of performance at play here. It could just be bugginess and incompatibility rearing their ugly heads.

1 Like

Since BFI is hardware, it shouldn’t show in the video, correct? Just like HDR doesn’t show in RA screenshots.

2 Likes

Yeah, makes sense - my layman’s perspective guess is that it’s probably down to the fact that I’m using Metal and that’s not really what anyone else is using/what these shaders are primarily designed for.

I’m definitely starting to get a better handle, at least, on the relationship between shaders and presets and overlays. When I started this process yesterday I didn’t even have that!

I’m going to do as you suggest and start playing around with some of other stuff in the CRT folder, seeing what works, and what doesn’t.

I do have the Blargg filters installed too, and they work, so I’ll include those in my testing also.

Yeah, pretty sure it’s not BFI. That screengrab video is taken from a pretty basic 4K PC monitor which doesn’t have BFI as a feature. And I haven’t enabled software BFI in the RetroArch settings either.

1 Like

I was actually thinking about the software BFI that RetroArch has in the Video Options but even if it was off, I was just describing what the flickering looked like.

Retroarch BFI happens in retroarch, which is why the frame sync is critical. If the tv or monitor has BFI or rolling window then that would be only hardware

2 Likes

Just double checked my RetroArch settings, and, yep, BFI definitely switched off.

It’s an odd one. As a Mac user I’m used to everything being more of a pain/less reliable/etc when it comes to anything game-related though :sweat_smile:

1 Like