Duimon - HSM Mega Bezel Graphics and Presets - Feedback and Updates

Duimon-aio-small

Just wanted to share that I have published the initial release of my koko-aio presets.

The project thread is at…

https://forums.libretro.com/t/duimon-koko-aio-presets/45136

Woo-hoo!!! :partying_face:

11 Likes

@Duimon just a quick question: is there a way to fill the whole screen with your Duimon-Mega-Bezel-Potato shaders on an Android device? On my PC this is what I get on my 21:9 - 3440x1440 monitor, the whole screen is filled:

on the other hand this is what I get on my Android device (19.5:9 - 2340x1080), black bars on both sides:

1 Like

No easy way. It would require the use of a PC that had the same screen resolution and some image editing. I could do it with just an image editor and some tools in the Mega Bezel, but phone screens vary and I can’t justify creating multiple sets.

I do have some overlays with carbon fiber that are designed to fill that black space and be used in conjunction with the shader.

That automatic screen fill stuff is essentially a AAA feature and needs some horsepower.

1 Like

Understood, thank you.

1 Like

Just to clarify. I would consider doing a subset of the Potato presets at 21:9. Here is a shot from a Potato preset I put together in about 2 minutes.

It is 21:9 and I used the “Windowed Mode” fixed window size option in Retroarch to get the image, along with the built-in masking tools in the Mega Bezel.

The image is around a 1 MB. A night image would be larger. The only caveat is that RA saves the image at 3438x1438 so there is a 1 pixel black line around all 4 sides where I increased the canvas size to compensate. (It might work just as well with no canvas adjustment.)

It would only take a few hours to set up a small collection of Potato presets. I’m thinking all the major CRT screen systems and the main handhelds. (Excluding the GBA and Lynx until I update them in the near future.) So a small set of ~20 presets.

I would create a separate repo for the collection to keep things tidy.


The issue with doing something for cell phones is the lack of a screen size standard. From what I could gather, phones that would run the Potato well would have one of three aspects.

19:9, 19.5:9, or 20:9.

And I have no idea what the actual screen height and width are to set the RA full screen resolution.

If things go easy enough with the 21:9 I would consider doing the others if I could get the needed info.

So I did some digging and phones are weird.

The iPhone X and the Google Pixel 3 XL both have 19:9 aspect ratio. The resolutions are 2436x1125 and 2960x1440 respectively. Neither work out to 19:9 so even though the aspect is the same the resolution is independent.

So… doing some math.

3610x1710 is a perfect 19:9.

3822x1764 is a perfect 19.5:9.

3840x1728 is a perfect 20:9.

All of which can be done on my 4K monitor using the above method.

I have no idea whatsoever if they would work as expected on various phones with those ratios.

Here is the article with the aspect ratios. If I can find some members of the community to test quick sample presets, I would put in the work.

https://www.aiseesoft.com/resource/phone-aspect-ratio-screen-resolution.html

There are at least two phones listed for each of these aspects.

I’ll even take some lists of requested systems, possibly expanding the number of presets by a bit to cover the desires of those willing to give input.

How interested is everyone?

I’ve decided I will do a single complete set of 21:9. That should look better on all these devices that the 16:9 we have now.

I will follow my current potato model using 2560x1080 as the resolution and put them in a “Duimon-Mega-Bezel-Potato-21x9” repo.

First I am going to work on redoing any handhelds that are clipped at the screen edges, so they can be scaled and will have something to show in ultrawide.

2 Likes

That’s amazing! Happy to test the set on my Samsung S23+ (1080 x 2340 pixels, 19.5:9 ratio).

1 Like

It would be great to see what the 21:9 looks like on that screen.

I have a test preset uploaded to a repo here.

Click on each file and then the “Download Raw” button. They need to be in your root “shaders” folder and you need the Potato presets installed in the “Mega_Bezel_Packs” folder.

I left the image at the size RA generates with a screenshot so it is losing 1 pixel on all four sides. This will make the screen relatively 1 pixel smaller, but we’ll see how everyone feels before I go through hundreds of screenshots to expand the canvas size. (Although I could probably do it in a single pass with smart objects and a script. :wink:)

1 Like

This is how it looks on my phone:

It’s a bit cropped on the logo and buttons. By the way will you make the bigger monitor bezel version too? This one:

I expected that but it’s better than how it looks with the 16:9.

Yes. Since this is a resolution that is common for ultrawide PC monitors, I will do a complete set. (e.g. It will contain every preset my current Potato pack has.)

I am still willing to do a subset for the other resolutions. All it will take is a community member with a phone using one of the resolutions, willing to test it, and I will do a subset for that resolution.

Since you so graciously accepted my invitation, there is now a folder here with a 19.5x9 test using the larger screen preset.

In this test I edited the retroarch config (Knowing it was going to clip the screenshot.) to be 3824x1766 and ended up with a perfect 3822x1764 image.

Please test it for me when you can.

1 Like

Fantastic! It’s perfect now. Just one thing: the game doesn’t fill the screen whereas the potato 16:9 fills it (just tested it).

Edit: I figured it out why: you used the wrong slang reference in SNES_19.5x9.slangp. The right one is: SNES-[POTATO]-[Guest-Mini]-[Custom-Bezel_001].slangp

1 Like

Did I really? :rofl: Could we see a shot of it with the corrected reference?

Here you go :blush:

1 Like

Is it possible to use Duimon bezels with mega_bezel/Variations/Smoothed/SMOOTH-ADV_3_Extra-Smooth.slanggp? Would I just copy all 49 parameters in the settings?

1 Like

This will be a somewhat lengthy answer.


Load the base preset and save a preset.

Then open the saved preset in a text editor and, as a second reference, and the path to one of the params/presets in my “Params” folder.

The “Params” folder contains “Presets” that have no base shader reference. They were designed for this kind of fringe case.

If you have a hard time with relative paths you can load whatever preset you want end up using, save a preset, the open up that saved preset and change the path from “Presets” to “Params” and the .slangp to .params, then copy the contents into the first saved preset as a second reference line.

Here is an example. For the first step I load your suggested base preset and save a preset named “test1”.

Opening it we see this.

test1.slangp

#reference "shaders_slang/bezel/Mega_Bezel/Presets/Variations/Smoothed/SMOOTH-ADV_3_Extra-Smooth.slangp"

Then I will load my “Presets/Standard/Nintendo_SNES/SNES-[STD]-[Guest]-[Bezel].slangp” preset and save it as “test2”.

Open it and we see this.

test2.slangp

#reference "Mega_Bezel_Packs/Duimon-Mega-Bezel/Presets/Standard/Nintendo_SNES/SNES-[STD]-[Guest]-[Bezel].slangp"

Edit that line to be…

#reference "Mega_Bezel_Packs/Duimon-Mega-Bezel/Params/Standard/Nintendo_SNES/SNES-[STD]-[Guest]-[Bezel].params"

Then add that line as a second reference to “test1.slanp”.

New test1.slangp

#reference "shaders_slang/bezel/Mega_Bezel/Presets/Variations/Smoothed/SMOOTH-ADV_3_Extra-Smooth.slangp"

#reference "Mega_Bezel_Packs/Duimon-Mega-Bezel/Params/Standard/Nintendo_SNES/SNES-[STD]-[Guest]-[Bezel].params"

This can be done with any existing Mega Bezel base preset as a reference, or community Mega Bezel preset as a reference.

Don’t expect every preset to give you the expected results as settings in the new base may be incompatible. (Mostly community presets.)


The Advanced, Lite, and Standard folders in the “Params” folder are actually identical. The three versions are there to allow manipulation of the boilerplate as in the regular presets.

1 Like

I think it is working as it should. It’s hard to tell because the [Bezel_001] presets do not have any “Screen Black Edge”.

In any case, I think it proves that on these phones actual pixel count/resolution isn’t as relevant as aspect ratio.

Thanks for testing. It won’t happen extremely soon, and a subset still needs to be decided, (Most likely the cores I have installed on my AYN Odin 2 Pro, because they are popular and make sense on a small screen.) but when it does, your aspect will be on the list.

1 Like

Hey! :grin:

If anyone reads my project mission statement they will see this.

There weren’t many graphics that used existing art as a reference, and I always referenced photographs to try and make them more realistic.

As time went by I only used photographs, even if I had to get creative. For example…

…my Sharp X1 mock-up/template was a composite of three separate images.

The FM-Towns template was also a Frankenstein.

Anyway… the GBA was the first handheld I did almost 4 years ago now, and it was based on existing art.

Looking at it to start adding in the missing elements was honestly a bit embarrassing by my current standards. :innocent:

So I started from scratch.

Here is a WIP of the new GBA graphic.

Much, much better. :grin:

By default it will be scaled to crop just like the original, but it will show the sides in ultrawide mode and have an unfettered ability to scale.

4 Likes

Basic configuration for the new GBA is done. Here are some shots in normal and ultrawide mode.

I ended up zooming out a bit more than before to get enough of the GBA showing to make me happy. The good news is that the screen is dead center so scaling will feel more natural.

9 Likes

The new GBA has been integrated into my local branch. I will wait to do an update until all the handhelds are done.

Next up on the list is the Atari Lynx. :grin:

6 Likes