Mega Bezel Reflection Shader! - Feedback and Updates

Yep, that fixed it, thanks. Got it about where I want it.

One more thing, the shader crashes when the desmume internal resolution is raised from 1x. Not sure if that’s a RA thing or a shader thing. The log just says something about “screen size changed significantly”.

2 Likes

I think you are running into a personal hardware limitation. I got it to 1024 x 768 although it runs really really slow.

Personally I think internal resolution up scaling is overrated anyway. It does look pretty good at 2X. (BTW. I do like to upscale the PSP. :grin:)

Glad you got it working.

1 Like

image

Mega Bezel is updated to V 0.9.07 2021-04-24

Changes:

  • Put back in performance optimization for the info caching step in the first pass
    • This is what caused the FFVII menu artifact before so let me know if anything similar happens
  • Added Crop Mode so you can choose between no cropping, only crop black and full cropping
  • If Resolution is 0 we will now show a black screen, instead of a random color from the background
  • 3DS Preset with Citra Fixed
10 Likes

Hi @HyperspaceMadness.

Just checked the new version.

Thx for the update.

For the 3DS preset the second screen (smaller/bottom one) is scaled down by default (2nd Screen Scale Offset).

Is this intentional?

1 Like

Not sure, I’ll check it out

1 Like

Hello there! I tested the new Crop Mode, it worked in most games, but oddly enough it didn’t work in Super Mario 64, which was a WIP image that you posted, the horizontal black pixels are cropped, but only the first few pixels are cropped in vertically lines, then it stops, like this image:

Edit: I’ve found the problem related to Super Mario 64, it was a core option called (PARALLEI-RDP) VI gamma dither, which needed to be disabled.

Also, in Castlevania: Symphony of the Night, the cropping works, but in the menu in-game it seems to crop a color line that isn’t black on the left side of the screen, images: No crop left side:

Cropping left side (the number of pixels doesn’t matter, it does the cropping with every number):

P.S.: I’m still having that blink in white in n64 games, so maybe it’s not a resolution problem.

3 Likes

Thanks for the upddate @ HyperspaceMadness :grinning:

3 Likes

Thanks for testing this :smiley:

I might be able to have a black brightness threshold which would support this kind of situation.

I’ll fix this, it’s probably always 1 pixel off I think

2 Likes

That would be great!

Thank you for your hard work on this great shader!

2 Likes

Hi All, I saw some work TheWolfBunny64 posted on discord today about different palettes they have made for the gameboy

It seems like it would be cool to have a shader pass which took the standard gameboy black and white output and allowed you interactively choose between a bunch of these palettes via parameters.

https://www.deviantart.com/thewolfbunny/gallery/69987002/game-boy-palettes

Anybody interested in this? Any favorite palettes?

10 Likes

I love all palette and it’s difficult to pick my favorite without playing.

3 Likes

I think it would be great! When/if you ever get the DMG fixed doesn’t it already have some pallet selection? You could just add to the list. :innocent:

I like the fruity orange. :grin:

2 Likes

Yeah it has palette support and hopefully I will fix it at some point, but I’m thinking of adding some palettes as hardcoded color values in the code instead of images, so that we can have A LOT of palettes to choose from and not run out of texture slots which we kind of are at the moment.

2 Likes

Whenever it’s possible to use code instead of images that’s a win win. Now that I think of it, even the cores use images as palettes. I suppose each one of those steals a texture slot, but it’s usually not an issue.

Would you be doing this exclusively for the Mega Bezel or are you thinking of working with the author of the standalone DMG and adding it there too?

If only the Mega Bezel, would this be something you might add as an option any time a core outputs a B&W screen?

:thinking: So many questions. :grin:

3 Likes

Yeah I think I would expose it as both images and a bunch of hard coded options to step through, that way the user can supply an image of their custom palette if they want. Also probably allowing the user to set the colors directly directly with parameters if desired.

I hadn’t really thought of that but that’s probably a good idea to see what could be done to make that one a bit more flexible, I don’t think there would be much performance cost.

I think this really depends on how much control we want to put into this functionality, if there are just a few parameters which can be used when desired having it in the general megabezel package would be good. If it starts to have a lot of parameters then it’s probably best to have it in it’s own preset.

It’s the sort of thing which could be implemented as a separate pass which could be used independently of the megabezel if desired.

It sounds like it would need 5 parameters. You could combine the “Default”, “Image”, “Custom HSV”, “3 - ###” in a single parameter. Then have 4 HSV parameters. (Which I guess would each need 3 parameters plus headers.) So 17 additional parameter lines.<— :astonished:

Uh, yeah. :worried: That is a lot to throw in with what there is already.

1 Like

Hi @HyperspaceMadness, prefere DMG!

2 Likes

image

Mega Bezel is updated to V 0.9.08 2021-04-26

Changes:

  • Fixed Black-Only cropping to leave lit pixels right at the edge
  • Added a Black Threshold value for Black-Only cropping
  • Fixed Upside down error with 3DS Advanced
  • Added Standard 3DS preset (Uses Guest-DrVenom instead of LCD)
  • Dual Screen 2nd Screen Sides Cropping uses percentage
    • This allows you to change the core resolution to 2x etc and have the crop be correct on the bottom screen
    • This brings up the question of if the regular cropping should be in percentage as well which I’m leaning towards doing
  • Fixed Resolution Debug text to stay smaller longer so it doesn’t get clipped off
  • Fixed ADVANCED Bezel Curvature Mode
10 Likes

@HyperspaceMadness

3DS stuff works as expected OTB. :partying_face: (I’d be interested learning how you managed that viewport flip with all the layers.)

Small request if you feel generous:

The new cropping percentages are forcing me to go in and redo the cropping on my Standard 3DS presets. I noticed that at .50 stepping increments, it adjusts the crop at greater than 1 pixel per step. (It is tough to bullseye integer scale.) Could we lower it to .10? That would give us 1000 steps which should be good for anything half the width of the screen or less.

2 Likes

Yup for sure, I had actually thought I had set it to 0.1 so I’ll do that soon.

It was actually pretty simple, it was already flipping the base viewport coordinate used in the last pass. But since the Reflection pass already flipped itself I needed to get the last pass to not flip the coordinate used to sample that pass specifically, but still use a flipped coordinate for everything else

2 Likes