Koko-aio shader discussions and updates

Well it was a borderline case that surprised me too because it worked.

Basically i was able to determine in the screen was rotated (in cores that doesn’t prerotate content) by comparing the original size with the viewport one.

Since this query works only in a pass that scales to viewport, but i needed that info in the early pipeline stage, I stored that info in the alpha channel of “isrotated_pass” (if memory serves me), and then i queried that pass feedback from several passes before.

Since GLcore works as well, I don’t consider this an ‘hack’ or the exploit of a glitch, and is probably as you say, dx11 implementation is not 100% working in this regard.

Granted, this is not a crucial feature, but I’not considering the hypotesis of stripping it from the shader to overcome implementation issues.

And btw, thank you very much to have taken the time to test, I really appreciate it.

2 Likes

Yeah, I’m not sure why it’s failing on you because I do some pass feedback shenanigans as well, perhaps there’s some small difference which is causing the problem,maybe it’s specific to getting the feedback pass from a different pass.

2 Likes

It is probably because the pass isn’t really defined yet.

It is not misbehaving like it happens for guest.r shaders on dx11, it just doesn’t have a clue what that pass is! :sweat_smile:

Please implement a “scale to original” metadata in slangp, so that one can freely go back and forth from viewport!

4 Likes

Yeah it’s on my list somewhere :wink:

5 Likes

I can help you finding it :stuck_out_tongue:

3 Likes

Well then,
I managed to ditch the problematic pass while retaining the old features. Performances should not be impacted at 1920x1080 and may be a bit higher when going up with resolution, but not much.

If the problem noted by guest.r was the only one preventing koko-aio from running on d3d11, that change should be enough to make it run.

8 Likes

awesome. i’ll check it out and let you knw :call_me_hand:

is this going to be implemented in a future retroarch build or is your github updated? whats the best way to test this out?

1 Like

see first post, grab the development archive and unpack it somewhere in the existing slang shaders folder. It will make its way in the official shaders when a new stable release will be issued.

2 Likes

Since I’m thinking to release a new stable soon, have you tried to run it?

2 Likes

I unpacked the development .zip in the first post. Dropped the contents into the RetroArch directory…

shaders > shaders_slang > bezel > koko-aio

Tested SNES on bsnes and Genesis on Genesis Plus GX

Got the same ‘Failed to apply shader preset:’ as before. Hope this info is helpful.

weird, at least we tried…

thx for trying to find a solution bro. I’m around if you need someone to test somethn out on the Series S :+1:

Love these shaders. I know it’s for Tv/Monitor, but any chance of Tate version for vertical arcade games?

Cheers

K

Do you have problems with rotated games? If auto detection isn’t working for you, and it may happen with cores different from mame 2003 plus or fbneo, try to force 3/4 aspect ratio in the shader options.

Will give 3/4 a go. Thanks.

1 Like

If you pick up the koko-aio shaders from Github, you need to move the presets from the presets directory into the main directory. Then you need to correct the two BASE slangp’s in the first line (delete the … because they are now in the main directory). Then they work.

I can confirm from recent tests that Mame (current) rotates differently than MAME2003 and FBNeo

Quick question to @kokoko3k as regards koko-aio.slangp: If I do not want that the background artwork or the foreground artwork is repeated if the retroarch window size is larger … is there an alternative option to:
bg_under_wrap_mode = “mirrored_repeat”
bg_over_wrap_mode = “mirrored_repeat” ?
Because with Arcade Artwork as background/foreground, it would look nicer if the artwork just ends, but it not mirrored. Thanks!

…ends how? Border color? Black?

No way other than what you mentioned by now.

Maybe if i clamp the coordinates in the shader, I can make it repeat just the border (single pixel) without to much complexity added to the shader, that is screaming for mercy :slight_smile:

Would it be right for your use case? It would require the background to have a little black outline.