Yes, I understood that, but still that magic happens before the shader code per se, since it is unaware of what happens in the .slangp for what concerns the texture/luts filenames, hence there’s no much to do by my side (read: koko-aio was already capable of detecting if the core requested viewport rotation, but without different lut bindings for them to avoid excessive branching).
@Starman99x:
I just pushed your updated presets to presets and overlay repo, thanks!
If you want to load different textures files for different rotation states, you just have to edit one .slangp according to naming conventions/wildcards supported thanks to the new features; koko-aio (like any other already pre-existing shaders) is just ready for that.
As a recap, the luts that may be of interst in that context in koko-aio slangp files are:
- bg_over: the texture applied “over” everything that shows underlying things (game, bezel, ambient lights) via alpha channel.
- bg_under: the texture that sits between the bezel and the ambient light and that show underlying things (ambient lights) via alpha channel.
So you can edit the slangp with something like:
bg_over=path/to/some_name_$VIEW-ASPECT-ORIENT$_some_name_post.png
Then you name those texture files:
- path/to/some_name_VIEW-ASPECT-ORIENT-HORZ_some_name_post.png
- path/to/some_name_VIEW-ASPECT-ORIENT-VERT_some_name_post.png
Those filenames will be alternatively picked, depending on the game orientation, that way, you can have one .slangp that uses different textures for horizontal games and vertical ones.
It is handy, of course, but it would save just one .slangp, because $VIEW-ASPECT-ORIENT*$ assumes just two values.
The real gain that comes from that features, lies in the opportunity to have one slangp to load “TONS” of different texture files when the wildcard substitution can have many different values (see wildcards: $GAME$, $CORE$
, $PRESET_DIR$
), exponentially growing when you combine them into a single wildcarderd fileneme, eg:
bg_over=path/to/some_name_$GAME$_$CORE_$VIEW-ASPECT-ORIENT$_some_name_post.png
So, my question, in this context:
“what is the problem that needs to be solved?”
…would have been answered:
“to use one .slangp instead ot two for horizontal and vertical games”.
Ok, maybe more because i read that apart from H and V orientations, the game could be rotated by 0,90,180,270 degrees, but i repeat, the real gain comes from being able to support tons of combinations.