Mega Bezel Reflection Shader! - Feedback and Updates

Yeah the 3d deformation from Royale is really neat.

We might be able to try the hdr reflection idea thing @JonnyTenebrous mentioned.

2 Likes

You are right, the .h and .inc they seem to be interchangeable.

one of the reasons it’s in its own pass is because it’s storing the curvature for each pixel in the viewport of what the curvature calculation is from the parameter values the user has set.

It would be awesome if it was only recalculated when the parameters changed, but I’m thinking that this might not be possible. @hunterk, any thoughts on this?

2 Likes

@hunterk ask and you shall receive

The only problem I run into is making the mask/scanlines look good at non integer scales (all my monitors are 768) but I don’t think there is a resolution that will produce an integer scale with this overlay and image size required.

Sidenote, does anybody here actually have a PVM to compare against? I’ve only seen pics and YT videos.

5 Likes

Yeah, looks great. The moire is a drag, but yeah, I think it’s par for the course at 720p, unfortunately.

I have a couple of PVMs, yeah, and this looks quite legit. The spherical curvature really bugged me before in a “well aaaaackshully” sort of way but having the straight sides goes a long way :slight_smile:

2 Likes

I wonder if adding a sharp bilinear shader to the passes will help minimize the moire

Sorry to appear intrusive to the very constructive discussion here but I am having the simple issue of ‘Failed to load shader preset’ on some of the presets.

I am on the latest version, my core is the SNES9x, and I have tried setting the Video Driver to D3D11, Vulkan, glcore but they don’t work for some shaders. All default slang shaders work fine (original)

Can someone help me find out what I am doing wrong? Integer Scaling is OFF, Overscan is ON. I’ve also set the Ratio to 16:10.

I’ve copied the shaders by REPLACING the respective folders in my Retroarch folder.

I am on a latest version of RetroArch 1.8.5.

I have a Nvidia RTX GPU, Windows 10. Screen res is 120hz 1440p

1 Like

Actually this isn’t a fully self contained shader pack, it still uses files in their normal place in the guest & easymode folders. The version of Royale is actually self contained as I copied all the files.

If you take a look at the package you’ll see that the folders inside are shaders/shaders_slang/crt… So to install you want to drop the shaders folder from here right overtop your shaders folder, then it will add everything in the appropriate place.

If you are still getting an error message can you post more of the message? To do this you need to

2 Likes

Ehh my bad.

Sorry about that, I’ll just delete my post as I don’t feel like editing that to reflect the correct information, and I don’t want to add confusion to the process.

On that note, I’d suggest adding installation instructions when you post new updates from now on, and add which drivers work with the shader (slang, glcore).

1 Like

OK So I’ve managed to consistently create the error, if I set Video Driver to D3D11, and load a shader it will give this error;

shaders\shaders_slang\crt\shaders\hyperspacemadness\hsm-mega-bezel-reflection.slang.ps.hlsl(174,12-56): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you ex

So I’ve also realized, gcore video driver works perfectly (as in loads the shaders). So for now I guess I won’t use D3D11.

Many thanks, have a good day

2 Likes

This a known issue with the D3D11 driver I’m fairly sure. I think it’s just buried in the thread.

Glad you got it running!

1 Like

Thanks for posting this error this helps me know what’s going on, It might be an easy fix.

3 Likes

Is there a way to just have scanlines without a dot mask. Because I’ve noticed that a lot of PVM’s only have the horizontal lines with no mask

Isn’t mask 0 or -1, no mask?

EDIT: -1 is no mask, 0 is CGWG mask.

They all have masks, but at lower res like with your overlay, you’re better off without it.

Hey I really like the new changes to the shaders. Thanks. However, I can’t seem to be able to reproduce my preset anymore. AFAIK the mask option is gone so I can’t extend the reflection anymore. Any help? :disappointed:

2 Likes

Just increasing the bezel width & height to fill the screen should do it

3 Likes

Maybe I’m just dumb, but is there a way to adjust the offset (x and y) for the output without offsetting the background and/or overlay image as well? Currently I’m not able to fit the output into my non-centered TV overlays. Does this option exist and I just don’t see it? Or could it be added in future releases?

lilbud seems to have done something like this with his PVM Overlay, but I guess he didn’t use the overlay image feature of the shader, but the overlay feature of retroarch - which will not work for me as I have a setup with different monitors and different aspect ratios … and retroarch is still not able to output an overlay while keeping the correct aspect ratio.

1 Like

If the following is set to 1 it should fill the whole screen and not move

[BG IMAGE]  Scale Mode - 0:Auto 1:Fullscreen 2:Fit Height

If that’s not what’s happening let me know and I’ll fix it :slight_smile:

1 Like

Awesome; thanks for your help! This time I used CRT-Guest instead. Here’s my updated preset with V 2020-04-19 Edit: It’s very resource intensive; undoable @ 4k unless you have current year flagship.

[Preset removed; deprecated]

3 Likes

The Mega Bezel Reflection shader is updated to V 2020-04-20

Changes:

  • @frenki is right the background texture was always moving, so I fixed this.
    • Mode 0 : AUTO - moves the texture and scales it with the screen.
    • Mode 1 : FULLSCREEN - Scales the texture to stretch to the full screen both x & y
    • Mode 2 : FIT HEIGHT - Scales the texture to fit the screen height and x is unaffected, so you can have a 1.77 aspect ratio texture and it will just clip off the sides when used on a 16x10 screen
  • Only the shader was updated and no parameter names were changed so presets from V 2020-04-19 will still work.
6 Likes