Mega Bezel Reflection Shader! - Feedback and Updates

I have tried that, but I find that I like the results with Nesguy’s RGB preset a lot more. It’s not a big problem at all though. I get good performance in RA with that preset.

1 Like

I was suggesting that you use Nesguy’s RGB preset. Just not the grade part. Nesguy has presets for CRT-Guest-Advanced and CRT-Guest-Advanced-NTSC.

1 Like

Ah, I get you. I did try and finagle the grade portion out of Nesguy’s RGB.slangp, but OpenEmu would then throw up that ‘serialisation’ error I pasted above, rather than the error where it can’t read the grade.

To be honest, I’m not sure it matters too much to me in the end! After playing more with RetroArch last night, I think it’s better to stick with it than try and use OpenEmu - at least for SNES, MD/Genesis and PS1, which all work very well in RetroArch.

1 Like

I had a sudden thought today, about the poor performance I received on RA using Mega Bezel/Cyber’s presets.

I opened RA and kept everything the same as in my previous tests, loaded a ROM in Genesis Plus GX and then selected CyberLab__Arcade-Sharp__PVM-Edition__ADV.slangp as my shader.

In full screen, same bad performance as before, very slow with distorted music.

But then if I go into window mode and shrink the window down to the size of a large postage stamp, it runs at full speed with no distorted music.

Is this because when I’m running in full screen, RA is scaling the ROM to the native 4K res of the monitor I’m using? Is there a way of preventing it from doing so?

Thanks in advance!

Yes.

Maybe. But the solution is really what Cyber suggested. I would assume you’ll get poor performance at 1080 also. (Bigger than a postage stamp.)

You need to run the Mega Bezel on high performance hardware.

When you are ready, I wouldn’t go with an APU either. Spend more money than you think you can afford, go with a 3070 or higher GPU. In the end you’ll be much happier, for much longer.


While you are saving up some cash, you can go with a slim CRT shader and overlays.


BTW. How is your performance using a Lite shader? e.g. \bezel\Mega_Bezel\Presets\Base_CRT_Presets\MBZ__3__STD__GDV-MINI.slangp

Cyber’s presets are not optimized for performance. :wink: (They are using a heavy hitter base preset.)

Edit: Just read through your posts and saw that you get a 90% increase in performance. Your last post didn’t mention any flicker. Is that no longer an issue?

1 Like

Ah OK, was just a sudden thought that drifted into my mind - sounds like I’m way off base though.

The flicker only occurred on the Potato versions - I leapt straight into the most hungry ADV version this time, to see if performance improved when I shrank the window. There’s no flicker on the ADV ones for whatever reason.

I might give the STD ones a go, too, and see if a 1080p res gives me good, flicker free performance.

Fully appreciate where you’re coming from on the ‘Just buy a PC with good specs’ angle. It’s not something I’m planning on any time soon as this is just something I’ve started tinkering a bit with, rather than something I want to put a lot of money towards. OTOH, I appreciate that my incessant questioning in here might be annoying when there is an obvious ‘Buy a capable PC’ solution to every query.

With that in mind I thank all of you guys for your patience and the time you’ve spent kindly discussing with me.

And just to add, I’ve not had a complete fail on the shaders front. The lighter stuff like Nesguy’s RGB GUEST ADV preset and the Megatron SDR ones work great, and I love the results with those :slight_smile:

1 Like

This is probably because cyber’s presets use the SMOOTH-ADV preset as the base which is most resource hungry base preset from the Mega Bezel (@Cyber correct me if I’m wrong).

@Cyber you may want to consider switching to the ADV preset as your base in the presets which are not using scalefx as the performance will be much better since a number of people are using them, but of course this is up to you.

2 Likes

I totally get that not everyone has the means (Or need.) to buy a beefy PC. That is why I have standard overlay versions of all my graphics. They can be used on an SBC. :grin:

4 Likes

Probably a stupid question but how can I set the shaders/bezel for mame? is that through Retroarch? Thank you for the help!

1 Like

This is not necessarily the case.

I have 4 main preset folders with 3 subfolders for Optimized alternative presets at 3 resolution - 4K, 1440p and 1080p. I mainly use 4K, occasionally, I might use 1080p. There’s a vast difference in performance between running a preset at 4K vs running a preset at 1080p. If a user has a 4K screen, but not enough performance, I recommend they either use the 1080p presets at 1080p desktop resolution for a significant performance improvement, use my presets in my second tier folder, which uses the SMOOTH-ADV-NO-REFLECTIONS base preset or if more performance is needed still, a combination of reducing resolution to 1080p and using the presets in the 1080p folder and using the presets that use the SMOOTH-ADV-NO-REFLECTIONS base presets.

That’s 3 tiers of performance available there alone.

Subsequently, I came across @Soqueroeu-TV’s excellent TV backgrounds, which use the STD_GDV base preset with Full Reflections. I made presets for those that are optimized for 3 resolutions 4K, 1440p and 1080p.

I thought to myself that folks who for whatever reason couldn’t run the presets that use the SMOOTH-ADV-NO-REFLECTIONS Base Preset can at least use these and have a wonderful, beautiful experience.

Lastly, I most recently made a folder with a couple presets for Mobile/SBC Devices and Very Low Spec PCs.

Those presets use GDV-MINI.

I think I’ve done enough to cover a wide range of performance scenarios with my included presets and users always have the options to modify my base presets if they wish to eek out even more performance than already on offer.

There might be a few presets or even many at times that can benefit from optimization but there are over 150 in the folder and many of them are intertwined. I’m not going to go through each one to change the base preset then it negatively affects another preset which branches off of it that uses a particular feature.

Also, I develop and test as I play. I tweak as I play, today, I might feel that a preset might look better or good enough with ScaleFX Off, I might do some further experimentation and tomorrow or next week, I might decide that I prefer the way that preset looks with ScaleFX On.

If I was to change the base preset to STD or even ADV right after I set it to Off, then that’s not only extra steps but when I flip the ScaleFX switch in order to see how it looks, nothing would happen.

As a matter of fact, there may be not even be a ScaleFX switch because it might have been removed from the settings of the base preset.

I thought I explained most of this maybe last week in response to a question by @Duimon about, “why no middle ground?” but I guess my response wasn’t fully understood.

Here are the links to those posts.

It’s not far fetched that I might create a super optimized version of my preset pack but this would only take place at a time when development isn’t so fluid and time is permitting. I already have 4 Main folders of presets. I won’t want to add too many more to create confusion in users minds.

So, it is not entirely the case that there’s isn’t any middle ground for performance in my shader preset pack and that CyberLab Mega Bezel Death To Pixels Shader Preset Pack requires a high performance machine or even that they are not optimized for performance.

As for the former, I use a GeForce GTX 970 with 4GB VRAM at 4K with my SMOOTH-ADV-NO-REFLECTIONS presets and at 1080p with my SMOOTH-ADV presets and they run perfectly. Surely, a GeForce GTX 970 is considered low end to low mid-range by 2022 standards?

As for the latter, I have chosen to optimize my presets in a way that preserves the fine details and qualities of my presets while still giving me the flexibility to work on perfecting the art of my shader presets as an artist with his full slate of brushes, easles, canvasses and colours.

Here is a quick table showing performance tiers from high end to potato using CyberLab Mega Bezel Death To Pixels Shader Preset Pack.

  1. 4K Reflections

  2. 4K No Reflections, 1080p Reflections

  3. 1080p No Reflections

  4. STD 4K Reflections

  5. STD 1080p

  6. Mobile/LowSpec GDV-Mini 4K

  7. Mobile/LowSpec GDV-Mini 1080p

Read the installation instructions at the beginning of this thread. If your interested in my MAME presets, follow the link to my thread and read my installation instructions.

Once everything is installed, call up the RA GUI by pressing F1 on your keyboard or the Home key on your gamepad.

1 Like

Mega_Bezel_Logo

Mega Bezel is updated to V1.0.005_2022-08-24_Rev-1

Changes:

  • Updated license date
  • Renamed LOTS of shader files, Removed hsm on directories and base files
    • No preset names have changed so you should notice no change
  • Ambient Lighting
    • Default ambient lighting has changed so that the first lighting image will affect everything but the background
      • The background will be affected by the second ambient image
      • The first image has changed to one with the lights closer to the middle and brighter
        • This brightening up the monitor graphic and helps separate it from the background
    • Added a mode to decide which images with these modes
      • Use Both
      • Only 1
      • Only 2
      • Swap the Images
    • Changed Ambient Lighting Scale with viewport to be a scale inheritance mode
      • It will now be able to follow the tube or the viewport scale
    • Added a Multiply Opacity by Diffuse Amount, this helps adust the highlight when the diffuse image is turned on
    • HSM_TUBE_STATIC_REFLECTION_IMAGE_ parameters renamed to HSM_TUBE_STATIC_
    • Added Position X and Y and Scale x
    • Added Black Level for Static Image, helps to adjust how much how sharp the highlights are
    • Added Optional Noise, good for getting rid of banding
  • Updated Reflect-Only presets to use Glass as a base to use less resources
  • Megatron updated to V3.4.1
  • Fixed CRT Multiply mode so it would now appear in the reflection
    • Fixed Gameboy like presets where reflection

Go to the first post here for links to the package and install instructions. Please make sure to read the install & setup instructions

New Dual Lighting

Dosbox by Duimon with old lighting

New Lighting, different lighting on Monitor and BG

Mac Example by Duimon

Here’s an adjustment to the tube diffuse and static

New default static reflection texture and no tube diffuse, Ambient Lighting Off

Tube Diffuse Added

Ambient Lighting applied

CRT Image applied in multiply mode and fixed reflection

Gameboy Example by Duimon

Big thanks to @Duimon for creating a new lighting image for the foreground!

6 Likes

Looks perfect, nice work my friend! :star_struck:

Seems I am taking a break from graphics to do some preset maintenance. :grin:

4 Likes

Had to repost this, super fun stuff!

7 Likes

The new features such as “Ambient Lighting * Default ambient lighting has changed so that the first lighting image will affect everything but the background” Is there any video showing it in action somewhere?

3 Likes

The two DOSBox pics above are a really good example. They are using the old default vs. the new default.

You can get the old look back by adjusting the parameter.

“Only 2” will give the old look.

4 Likes

So by Ambient Lighting, in this case, it means that the overlay will have a different tone, so it’s static. I thought it was somehow dynamic, much like a darkened room with a TV screen ON.

3 Likes

Yes that’s right

Hmm interesting idea!

I think this will have to wait until the dynamic lighting features of the future come around.

This is because right now it’s cached with the rest of the graphics, and therefore can’t be dynamic.

To do dynamic lighting the lighting needs to be broken out in its own passes, then composited together in the final pass.

4 Likes

Very nice release! :+1:

I was looking for the community presets and couldn’t find a link on your Github. What do? :sweat_smile:

2 Likes

Thanks!

They are in the examples package here :smile:

4 Likes