Koko-aio shader discussions and updates

Hi! Backdrops is the very good news, they work like a charm. So cool, many thanks!

The not so good news: Still having very difficult times with bg_under in vertical games (while horizontal games just work as well as any bg_over artwork works). But bg_under in vertical games produce very unforeseeable results (some work, some are distorted, some crash).

BG_IMAGE_WRAP_MODE to static 1 (my standard setting) seems to make things even worse.

I’m still trying to figure out a system in the problems, but besides that only vertical games with bg_under, I so far failed with a systemic approach…will look further into it and try to find some system.

One example, 1942, without the static setting:

Whereas 1942, with the static setting in order to avoid mirroring (tiny artwork above and below the bezel, no change when rotated):

i’ll look further into the issue in the next days. I did not understood the problem to be with rotated games so i did not tried.

1 Like

Easy and good results. Thank you!

1 Like

@kokoko3k @estefan3112 Is it possible to have separate backdrop shift/zoom overrides for different presets?

It is possible, but i’d rather not, since the texture are alternative.

1 Like

Hi, nearly there:

  • The errors in bg_image seem fully gone.
  • Auto Rotate also now works for bg_image

Will do further testing, but four presets look good so far).

But new and strange behavior of backdrops: They are now “caught” inside of the screen dimensions, while before they appeared in the entire background independent of video image settings. This screenshot should explain (I love the flipped Y in “PLAY” :slight_smile: ):

Test preset (not yet on Github):
#reference “…/…/shaders/shaders_slang/bezel/koko-aio/monitor-slotmask.slangp”
DO_CCORRECTION = “0.000000”
DO_BG_IMAGE = “1.000000”
BG_IMAGE_OVER = “1.000000”
DO_BACKDROP = “1.000000”
bg_over = “…/…/shaders/shaders_slang/bezel/koko-aio/textures/arcade_textures
/invaders.png”
backdrop = “…/…/shaders/shaders_slang/bezel/koko-aio/textures/arcade_textures/invaders_backdrop.png”

Also in MAME2003:

1 Like

EDIT: Vertical games that require BG_IMAGE_ROTATION = “2.000000”, e.g. gyruss in FinalBurn Neo, still require a manual setting, but that’s not really an issue.

Haven’t tested backdrop overrides for the time being, as up to recently, backdrops were only available statically.

1 Like

Nothing that could be done about detecting flipped images for FBneo.

Support for it can be added in with this in a new retroarch version.

Backdrop now is painted over the whole viewport:

1 Like

This is brilliant! New release 0.3 with merged backdrop presets and 14 new ones. Still no real plan for tilted screen artwork :thinking:

2 Likes

Are backdrops now available in stable koko-aio?

@Starman99x: Latest stable is 3.9.01 from a month ago, where backdrops needed to be enabled by modifying a static value in config.inc.

Now they are available via standard menu parameters, but no stable release containing the change has been issued yet.

@estefan3112: Great work, as always.

In your readme, i read that you still use ALLOW_BG_IMAGE_TEXTURE_WRAP_IN_SHADER with hardcoded BG_IMAGE_WRAP_MODE.

Any reason for that? those settings can easilly live in the .slangp presets via wrap_mode retroarch’s builtin.

That way, your fork could be 1:1 with upstream

2 Likes

@kokoko3k many thanks for the hint re wrap mode, I will correct this!

@Starman99x - yes, the new package of yesterday includes all backdrops in the shader package, no separate tweaking required.

1 Like

Sorry @Starman99x, maybe i misunderstood your question.
Now backdrops have they own zoom and shift levels that are part of the preset, so yes.

1 Like

First off, lots of great work being done with this shader since I last checked in. Fantastic work kokoko3k!

Second, and I’m not sure if this is possible, or maybe it is, and it’s dead simple and I just haven’t figured it out yet, but…

Is there any way on a 1080p display to have a fixed viewing size (in my case, 1280x960) and then have the shader generate the bezel around that?

Basically, I want a 240p x4 inside area, and have content scale to that, within Koko-aio.

Apologies if there’s an obvious answer - but it isn’t obvious to me :smiley:

Recently discovered these shaders and absolutely love them!

I also liked the RGB TV idea from Starman99x but tried something a little bit different.

I removed the Border from the Bezel and tried to fit it in perfectly into the background_over image. The Background Image is transparent and let’s the ambient light shine through.

I absolutely love those results, this is now my go to configuration :slight_smile:

Here are a few examples from Ristar:

2 Likes

@Faolon Really nice atmosphere you achieved there, my congrats!

Are you using the retroarch bundled koko-aio or the dev build?
Asking because in the upcoming version, there is a new parameter that allows you to colorize the foreground image without the need to modify its alpha channel.

Also, what do you mean by “I removed the Border from the Bezel”? If you put the image “over” the game content and the image itself is “holed” to show the content it should simply work.

Care to share your preset for us to cannibalize :slight_smile: ?

@jt.cs: XY problem maybe?
If you want an arbitrary fixed size content display, then no, it is not possible.
If you want to scale at 4x the content, then yes, support for integer scaling with a cap to the maximum scaling has been added some day ago on github repo:

1 Like

I’m using the retroarch bundled version. Real cool, that there will be a parameter for that!

I don’t mind sharing the preset at all…if you tell me how I would best do that :sweat_smile:

The issue with the border from the bezel is, that I made the whole background_over image transparent. Without removing the border, those 2 images overlapped and that just looks weird with the transparency of background_over.

Here is my modified bezel image and the transparent foreground image, maybe it’s more clear then:

Edit: Just had a look at the dev build. With the new parameter you really don’t need the seperate bezel image because there is no need for transparency - very nice!

1 Like

@kokoko3k Yes, arbitrary fixes size display that the bezel is generated around. I don’t use integer scaling, as previously I would specify a 960p viewport and that left content such as PAL Amiga 512p stuff only at 1x, although I guess I can try that and see how integer works with your shader and no specified size.