HSM Mega Bezel Reflection Shader! - Feedback and Updates

You’re welcome!, glad you are enjoying the shader package :slight_smile:

Great!

So by default it should be set to 2 which is “crop any”, and 1 is “crop only black”.

The thing with the cropping is that you must set some cropping values to see any effect, for example you could set crop left to 10 to get a 10% crop off the left side. If you had it set to “crop any” it would always take off that 10%. If you set “only crop black” then it would crop only black, and only up to the 10% you chose.

The Mega Bezel logo (or whatever image you decide to use) is “placed inside the signal” of you will, so it will be processed as the rest of the signal is, E.G. Scanlines etc. So it is displayed with the same resolution as if it was coming from the game. If you play a game with a higher resolution, like dreamcast it would be much more detailed. I imagine it might look rough on an atari 2600 game

So that one specifically is part of the Mega Bezel package, you can find a preset in the variations folder, it should be called Night something. There have been wonderful graphics and preset packages done by amazing artists in the community, you can find them at the end of the first post in this thread.

This is still on my TODO list because it requires a new feature to be added to retroarch. I got partway through implementing this and paused on it because it was going need a fair bit more work to complete.

So the potato presets are really focused on being able to run on potatoes, and therefore have most things stripped out of them that are expensive, and the reflection is one of the performance eating features that has been removed. Right now the Potato presets are really like a easier alternative to using traditional Retroarch overlays to apply graphics.

2 Likes

Hey, someone posted a video of the Mega Bezel on the Steam Deck :slight_smile:

6 Likes

I’ve been trying to get this running on my shield tv and it crashes on every emulator. here’s a log of me trying to load it on swanstation at 1x resolution:

[LibretroHostInterface] base = 320x240, max = 1024x512, aspect ratio = 1.22
[Environ]: SET_GEOMETRY: 320x240, Aspect: 1.219.
[Android]: Native window size: 1920 x 1080.
[LibretroHostInterface] base = 256x239, max = 1024x512, aspect ratio = 1.22
[Environ]: SET_GEOMETRY: 256x239, Aspect: 1.224.
[Android]: Native window size: 1920 x 1080.
[LibretroHostInterface] base = 320x240, max = 1024x512, aspect ratio = 1.22
[Environ]: SET_GEOMETRY: 320x240, Aspect: 1.219.
[Android]: Native window size: 1920 x 1080.
[Vulkan]: Setting swap interval: 1.
[Android]: Native window size: 1920 x 1080.
[Vulkan]: Destroying stale acquire semaphore.
[Shaders]: Finding parameters in shader passes (#pragma parameter)..
[Shaders]: Loading base parameter values..
[Shaders]: Load parameter value: "HSM_ASPECT_RATIO_MODE" = 1.000000.
[Shaders]: Load parameter value: "g_sat" = 0.150000.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm/hsm-add-params-potato.slang".
[slang]: Using render target format R8G8B8A8_UNORM for pass output #0.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/stock.slang".
[slang]: Using render target format R8G8B8A8_SRGB for pass output #1.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm/hsm-add-negative-crop-area.slang".
[slang]: Using render target format R8G8B8A8_SRGB for pass output #2.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm/hsm-cache-info-screen-scale-params.slang".
[slang]: Using render target format R32G32B32A32_SFLOAT for pass output #3.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm/hsm-text-potato.slang".
[slang]: Using render target format R16G16B16A16_SFLOAT for pass output #4.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm/hsm-intro-potato.slang".
[slang]: Using render target format R16G16B16A16_SFLOAT for pass output #5.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm-guest/hsm-custom-fast-sharpen.slang".
[slang]: Using render target format R8G8B8A8_UNORM for pass output #6.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm-dogway/hsm-grade.slang".
[slang]: Using render target format R8G8B8A8_UNORM for pass output #7.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm-guest/hsm-crt-dariusg-gdv-mini-potato.slang".
[slang]: Using render target format R8G8B8A8_UNORM for pass output #8.
[slang]: Compiling shader: "/storage/SERVBOT/Media/Emulators/RetroArch/shaders/shaders_slang/bezel/Mega_Bezel/shaders/HyperspaceMadness/hsm/hsm-post-crt-prep-potato.slang".
[Vulkan filter chain]: Creating framebuffer 1024x1024 (max 1 level(s)).
[Vulkan filter chain]: Creating framebuffer 1024x1024 (max 1 level(s)).
[Vulkan filter chain]: Creating framebuffer 1024x1024 (max 1 level(s)).
[Vulkan filter chain]: Creating framebuffer 1024x1024 (max 1 level(s)).
[Vulkan filter chain]: Creating framebuffer 1024x1024 (max 1 level(s)).
Pause: 0x277c4c2bd0
2 Likes

So my best guess is that it’s running out of memory because it’s in the middle of assembling the shader pass buffers, it manages to get through 5 at 1K before it crashes. I wonder if you are really running without upscaling in swanstation because standard PlayStation res is about half this. You could try one of the DREZ presets which reduce the resolution at the first pass.

Also have you tried with nes, snes or genesis?

2 Likes

I tried with snes9x 2010 and also crashed, but I don’t have a log for that. I can grab one tonight. I’ll also try power cycling the shield, some background process could be eating memory.

3 Likes

You can take a look at my preset pack which uses HSM Mega Bezel Reflection Shader. I’ve tested Atari games with several of my presets. My initial tests with my Computer Monitor Presets looked really beautiful. The sharper presets really shine on those older systems. You can start with the Computer Monitor Raw Preset but I’m sure there are others in the pack that will give you just the type of effect or look that you’re going for.

I retested some Atari games not too long ago with some of my newer preset revisions but I can’t really remember in detail what the experience was like except that they also looked pretty good.

CyberLab__Arcade-Sharp__PVM-Edition__ADV

You have to zoom in or view these screenshots fullscreen for them to look right.

You might also like Composite Pure or Composite Sharp. A few of my presets are included with HSM Mega Bezel Reflection Shader in the Community CRT Variations Folder. You can check them out.

The entire suite of presets is available at the following thread:

I have aimed to address this exact scenario in my presets pack. I have provided general purpose presets as well as console (and in some cases game) specific presets. Here’s a link to a couple videos of them in action:

I’ve improved my CyberLab SNES preset just this morning so I’ll have to upload an updated video!

5 Likes

@FoxFerreira

If you want the most accurate CRT experience available then you need look no further than the Megatron shader. It requires a bright display, and best results are obtained with a 4K display. Setup can be a bit intimidating but that’s what the presets are for :wink:

There are a variety of presets in the “community presets” directory of the Mega Bezel shader targeting different looks/tastes, you’re sure to find something to your liking and if not you can always tweak the parameters.

6 Likes

There are presets for the Mega Bezel with the Megatron in the Base_CRT_Presets/Megatron folder, but only hor non-hdr at the moment. Hdr will be coming later though.

5 Likes

Thanks everyone for the great suggestions, I managed to fix every issue I had and I’m satisfied with answers to my questions!

I’m having a new problem though, and it can be seen on the screenshot.

What’s with the weird circular lines on the screen, that can be seen in the sky more clearly?

I’m fully aware that it usually happened in old monitors, I’ve seen it before as a kid. Now, if I was playing in an actual old CRT monitor, I’d accept it as part of the experience! :smiley:

But my monitor is 1080p, and those just look weird to me in my screen. My questions are: What is that exactly? And how do I remove that effect? I don’t know how that’s called, so I can’t figure out which settings to change to remove it.

2 Likes

It’s called moire pattern. There are several ways to try to reduce or mitigate this.

First is to set Integer Scale Mode to 1, or, if you’re using Integer Scale Mode 0, adjust the Non-Integer Scale percentage until the moire disappears.

A trick is to enable the Resolution Info in Shader Parameters then also set Integer Scale Mode to 1. Look at the Non-Integer Scale Mode % when the moire disappears then try to be as close as possible to that number when you switch back Integer Scale Mode to 0.

These are some other things you can try:

4 Likes

If you change the parameter…

[CORE RES SAMPLING]>>>Opposite Dir Multiplier

from the default 100 to 50 the scanlines will look better and the moire should also.

2 Likes

You can also try changing the [ Curvature ] >> “CRT Curvature Scale Multiplier” to 0 which will remove curvature on the game image while leaving the bezel the same.

3 Likes

log of hsm potato crashing snes9x2010. still getting framebuffer 1024x1024, idk if i missed a setting somewhere or what. snes9x2010 doesn’t even have a scaling option that i know of.

another log of swanstation crashing, i disabled every enhancement. you can see the core loading 320x240 but still creating framebuffer 1024

2 Likes

Have you tried Beetle PSX and Higan cores? You can also try the Zfast base preset or MBZ_3_STD presets.

Yeah, this is really strange I haven’t seen this before, and I have no idea why it’s doing this, as I mentioned on Discord it would be good to try GLCORE.

As a comparison, it would be a good idea to try loading crt-Royale form the shaders_slang/crt folder and see if it loads and what the log says.

2 Likes

Has anyone suggested updating your GPU drivers?

The Potato crash on older Nvidia drivers.

2 Likes

Coming from a Shield TV user himself I’ll just tell you this, even if you get it working it’s slow as hell. My Shield is rooted and I even overclocked it and let me tell you, it’s sluggish no matter which shader you choose. Your best bet if you want bezels is to head over to the Bezel Project page and get everything from there. The Shield simply can’t handle these Mega Bezel Reflection shaders.

3 Likes

Or you could try my overlays if you like.:grin:

3 Likes

Yeah if anyone wants simple yet very nicely made overlays, I think @Duimon has made simple overlays of almost all of his presets.

2 Likes

Hello. Thanks SO much for your shaders, they look amazing from what I’ve tested so far. However, I’m really confused, I don’t see the plethora of presets that are shown in Orions Angel’s YouTube HyperSpaceMadness tutorial. In particular, from the file links in the OP, I do not see any generic/simple reflection presets without the bezels so that I can use a overlay of my choosing. Thanks in advance!

2 Likes