Uborder shaders

Yeah, i have also tested it and it should be fine.

2 Likes

Now we are 3 :laughing:

Btw, is there a way to make the shader fit properly on a 16:10 screen? koko-aio and MBZ can do that. They sort of zoom the image, which is better than stretching it:

3 Likes

Someone else asked something similar about it and at the time I couldn’t find an easy way to include that feature. I’ll look again that issue.

Now I remember the problem of doing this: you need to lookup texture size for every fragment and its completely insane. It should be just an uniform as framebuffer sizes.

5 Likes

New release: uborder-v0.3.2

  • Add static params files. Now the user can define a param to keep border aspect ratio;
  • Fix SOQUEROEU main folder path.

I thought about how to keep aspect ratio of borders when the display resolution is different from the border. Texture size is only accessible through fragment shader, which is too demanding. So, as only a few people really need this feature, it’s enabled through a static param in the file ‘uborder/shaders/content_bezel_shaders/include/uborder_bezel_reflections_user_static_params.inc’. There you can enable KEEP_BORDER_ASPECT_RATIO, and even set the texture aspect (in some cases the shader adjust the content correctly, it needs more testings):

// Enable this option only if background image and display have different aspect ratios.
//#define KEEP_BORDER_ASPECT_RATIO

// Define the border texture aspect. If you don't know, put the texture size as the comment below. Default is 16:9.
#ifdef KEEP_BORDER_ASPECT_RATIO
    #define ASPECT_TEX_X  16.0   // It's equivalent to texture size, it could be X=1920.0 and Y=1080.
    #define ASPECT_TEX_Y   9.0
#endif

If you don’t need that feature, let it off there.

This aspect ratio management is insane! So, I’m oficially entering the rabbit hole! tumblr_o8d3ms6Q3G1v6y9nqo1_500

10 Likes

(Nevermind, I was talking about integer scaling but then I noticed the difference wasn’t that big)

Got an old glsl version running on a known mobile device:

Thanks to @LetramChi for the tests.

6 Likes

I’ve got a version (without ambilight) almost as advanced as the slang. Only missing the LAYER2 background. Auto-Rotation works, I had only to change some code.

I’ll be updating in this new repo: uborder-glsl


First glsl release: uborder-glsl-v0.2.4

  • First glsl version.;
  • Spooky TVs included;
  • It’s more or less the same features as the slang version v0.2.3;
  • Only crt-nobody is compatible. Given the way glsl works, some ports won’t be possible;
  • Only bezel-reflections flavor is available. No koko-ambi, unfortunately (maybe when @kokoko3k is interested in releasing a glsl version).
  • It works on android mobile devices compatible with glsl #version 120 and upwards. Border must be png in this case, because Android jpg library is buggy.
9 Likes

New release: Uborder-v0.3.3

  • Add a new param to turn Outer Bezel transparent even if inner bezel isn’t;
  • Add param to modify curvature radius between bezel and content;
  • Update crt-guest-advanced shaders and variants to the latest;
  • Update ‘Spooky TVs’ pack to use koko-ambi;
  • Add ‘classic-crt-collection’ presets to uborder_packs.

To use classic-crt-collection, get the overlays in this link: https://github.com/TreyM/classic-crt-collection

Put the ‘CRT’ folder in this path: ‘Retroarch/overlays/CRT’

00024-250301-112514 00024-250301-112459 00024-250301-112433 00024-250301-112317 00024-250301-112309 00024-250301-112239

aliens-250301-120711 aliens-250301-120502 aliens-250301-120159 aliens-250301-120039

Koko-ambi test video:

https://youtu.be/cTCtBXI-DrA

10 Likes

Awesomeness m8!! :heart_eyes::heart_eyes::heart_eyes:

1 Like

I can also see what looks to be an inner edge added. Is this an addition in this update or has it always been there? Or is that part of the overlay?

1 Like

Inner Bezel you meant? It’s always there since the beginning.

The new params are these:

These new params can be seen being used in this particular screenshot. See how the bezel outline curvature is slighty less curve than the content. I used the modifier param to decrease curvature in the bezel.

The second param can be seen too. As you didn’t notice, the bezel isn’t transparent, but the outer bezel is and it was slightly increased to smooth the bezel outlines so that it blends better with the overlay.

2 Likes

The slight white edge on the very inside of the bezel on the arcade overlay pictures you’ve posted.

1 Like

Oh, these white lines are from the overlay itself, I’m using transparent bezels there. That overlay isn’t from your pack. It’s from here: https://github.com/cosmo0/retropie-overlays-arcade-realistic/blob/master/overlays/configs/aliens.png

1 Like

Ahh right no problem m8… you’ve done a great job :+1:… but you’re giving me work to do lol!

1 Like

I don’t think you need to change anything. Your presets will work with this versions. It doesn’t affect existent presets.

1 Like

I know but I’m gonna be looking at actual cabs now as reference… and I’m pretty sure they all have rounded edges lol.

1 Like

Awesome update!

Small nitpick: I think the presets should lead to “overlays/classic-crt-collection/CRT” instead of “overlays/CRT”.

2 Likes

This was my gig growing up!

4 Likes

Not by the instructions in his github:

I just follow instructions from the source.

3 Likes

Doing some testing and I’m going back and forth between Lights ON/OFF

I like very much how the lighting behave using Lights Out regarding the border, that can also be adjusted with the Border Dimming parameter, but I think that the effect on the bezel is too strong and not adjustable -> it goes to black or very close to it; on the other hand using lights ON the ambilight on the border is more difficult to handle even lowering Border to ambient light weight, the bezel (middle and outer) retain the color but feels a little detached from the whole “scene”…

am I overlooking something? is there a way to give a little light to middle and outer bezel with light out?

Lights out

Lights “on” - Border to ambient light weight : 0.10

2 Likes