Mega Bezel Reflection Shader! - Feedback and Updates

Not a lot of action on those game title screens next to the bezel, so not a lot of reflection.

I have been tweaking my script and I have it whittled down from 7 steps that, in addition sometimes called external batch files, to 5 steps that do the calls internally. I have been reading up on piping standard input and output and using the gnuwin version of sed. Before long I’ll probably have this at a point where I can share it. :grin:

HyperspaceMadness

1d

Hi, this is almost certainly because it has its own parameters. The shader system has a max number of parameters, and the Mega Bezel Shader with GTU is at the limit already (GTU adds 3 parameters), so if any shader you add has its own parameters it goes over the limit and won’t compile. This is a considerable difficulty with the Mega Bezel because it needs so many parameters, so much so that I’ve had to hack off a bunch of parameters from some of the crt shaders & other shaders in the chain.

Yes, that’s it! With @Syh’s help I managed to add mame_distortion.slang (mainly for the vignetting feature that I didn’t find anywhere else) to your preset by using static parameters. And it works, kind of. But I have some weird effect, as you can see: (must have something to do with the viewport and wrong scaling; it works perfectly as standalone, btw.)

Any chance to get this corrected? Or do you maybe plan to integrate some other kind of vignetting into your preset? This would be great for my old style 70s/80s TV overlays :grin:

PS: looking forward to test your very cool glass border preset!

1 Like

Hi, yes I think adding vignetting into the mega-bezel is the way to go, I’ve currently pulled out the vignette from the mame_hlsl, so it should actually work as you expect.

3 Likes

@HyperspaceMadness

Already did the thing it works fine, but I have an alternative suggestion for the vignette code besides mame’s if you’re interested I’ll PM you.

2 Likes

I believe I have my batch scripts to a point where I am willing to share them.

Any “hacks” I was using to make up for lack of skill on my part have been removed and replaced with code I am not so ashamed of.

I am going to spend some time commenting the scripts so anyone wishing to examine/improve them can understand at least what I was thinking when I wrote it.

Once the commenting is done I will upload it to my google drive and share the link. I won’t include any executables but will include instruction that also contain links to the software. All the software I use is either free or open source.

On my last test run I don’t believe there were any errors so I think I managed to squash any bugs. (I had some problems with HSV values where H was 0, (Solved by manually scanning for it and replacing it with 0.5 so there will be an insignificant difference in the color) and also files with exclamation points in their names. (Had to come up with code that didn’t use delayed expansion.)

Look for it soon. :grin:

3 Likes

Little update on this. Turns out that the image histogram wasn’t sorting the 5 colors at all so there was some randomness to the colors. This resulted in a lot more off-grays than I think would be desirable. I found a different way to export the histogram that was more efficient and then found a way to sort it. Comments now clearly say how to change the color from most prominent to least. I ended up choosing the second from the least color used. I am also planning on releasing the system art I have been showing, tailored to match thebezelproject art. The intention is to use my graphic as the placeholder.png referenced in the script. This way if by chance the end user has a ROM that thebezelproject doesn’t have a match for, there will still be custom art.

Comparing this to the Castlevania shot above shows an example an off-gray that replaced a more colorful bezel when the least common color was accurately selected.

This and the next two are results of the second to least common color being used.

An example of a placeholder default graphic.

Alternatively, thebezelproject downloader also downloads default art. Opinions on whether I should include my own are welcome.

4 Likes

Hey @lilbud could you post your settings? I’m trying to get my reflection looking similar to that but I’m having some issues.

HyperspaceMadness, any chance in the next update to add a default value at the end of each parameter when altering the shader?. I notice some of them have a default value so you can change stuff back if it looks wrong but not all values show the default value??

3 Likes

I love it ! I still think a blurred image of the game would be a nice effect to have when the Retroarch menu is displayed, it would make the menu text “pop” better !

@HyperspaceMadness

When using “Crop Oversan Left” to hack out a screen placement issue with “Adventures of Lomax” on Beetle PSX HW core, the CRT rotation changes back and forth from horizontal to vertical. (The artwork changes to reflect this) It could be related to screen resolution changes because it happens during scene cuts.

I am using guest-dr-venom. Is this still the scaling bug or something new?

1 Like

This is an interesting idea, it might be helpful.

One thing I want to avoid is unwanted noise in the names which make it harder for the user to scroll through them and read them quickly, as there are so many parameters already that it is a real eyeful already ;).

1 Like

This is probably not new, basically the cropping effectively adjusts the core aspect ratio in terms of number of pixels horizontal/vertical which is what determines what the automatic orientation thinks is horizontal or vertical.

Edit: I think the best way to fix this would be to do the calculation of horizontal vs vertical before the cropping so the cropping does not affect the it being horizontal vs vertical.

1 Like

I know your busy but it might be a good idea do a write up about what all the settings do and add them to the first post, as some of the reflection settings are kind of abstract and hard to tell what they are doing, imo. I mean there’s like 40 or so settings between the reflection, frame, and bezel. (Though most of the other settings are pretty easy to figure out.)

It’s just a thought, I feel like the more complicated shader the more it benefits from a read.me, lol. I know Royale could really benefit from one besides the book that exists within it’s code. And guest-dr-venom’s is currently out-of-date. (At least last time I checked.)

1 Like

While not exactly what you’re asking for…

This thread Mentions adding custom per-system wallpaper. A blurred wallpaper could do what you ask.

Thank you for the link ; but the idea would be to have the current game screen blurred…

Overlay image and shader preset for PVM. My screens are 768p, so adjustment may be needed if you have a higher res screen.

2 Likes

Thanks, my screen is 1080p but I imagine the part of your preset that I was curious about will be fine.

I was mainly concerned with the actual reflection settings you had as it’s more vibrant and visible then what I was achieving playing with the settings.

Thanks!

Pressing spacebar or retropad-start should return it to the default value.

3 Likes

That’s great to know, I’ve just been reloading the preset when I get the settings too out there and can’t figure out how to get them back to default.

The only settings I modified was the screen scale, I didn’t touch any other setting for the shader.

2 Likes