Koko-aio shader discussions and updates

Have you guys thought about doing the ambient light stuff in yiq/yuv colorspace, where you can separate the luma from the chroma easily?

Actually I use HSV to make the background picture darker and operate on saturation easilly, but YUV never crossed my mind for illumination purposes, you mean touching just Y and see what comes?

I actually had the UV in mind for tweaking, since I think messing with Y would affect your contrast.

2 Likes

Ooohh, yes, it is a great idea, as it would certainly solve some issues iā€™m having with clipping indeed!

2 Likes

Added another parameter to move the virtual led strip position (Led internalness), that way you will be able to achieve scenic effects by moving the leds far away:

ā€¦or why not decorate your virtual display for Christmas!

ā€¦it needs more work because some leds seem to burnout, have to understand why.

10 Likes

Hello @kokoko3k, I did an update of my repo to the new ng presets, and they really shine in FinalBurn Neo. However, in MAME (current) the video is turned upside down and mirrored. See screenshot.

Please note: The MAME (current) core has been updated recently n terms of screen rotation, so the rotation is actually fine with your old presets, but not with the ng presets. So it is only a problem with the ng presets in the MAME (current) core.

Cheers!

Thatā€™s weird, I donā€™t think anything in the preset or code has been changed regarding rotation handling, nor iā€™m doing core specific workarounds, so I cannot explain why koko-aio behaviour could have been changed.

Maybe something on your side? Iā€™ll take a deeper look btw.

Whatā€™s the preset in the screenshot?

@HyperspaceMadness: has rotation index passing from RA to the shader landed upstream?
edit - it seems not yet.

1 Like

Itā€™s apparently 1942 ;-). I tested with identical preset (1942.slangp in the config directories) in latest MAME (current). But let me please double check with another clean repo from GitHub, maybe I did something wrong.

EDIT - FORGET IT, I DID SOMETHING WRONG. I just downloaded your repo, and here the old shader and the ng shader behave the same. So I need to look into my repo for the error. Sorry for the confusion.

1 Like

It should be available in latest RA release if thatā€™s what you are asking ?

Yep, Iā€™ve seen the commit about it is previous to the latest stable release, so I thought it was not. My bad?

Oops, my bad, i was almost sure there had been a RA release over the past 3 months, but it seems not, so i confirm the latest 1.15 release doesnā€™t have that feature.

1 Like

I think @sonninnos had implemented this in our fork of mame current. Iā€™m not sure if that is in the core downloader yet

1 Like

I looked into this and the new Mame Current DOES have the new rotation options, to make it the same as it was before we can use this great option that Sonninos added in the core options:

Go to Rotation Mode and set it to Internal.

image

If it is set to ā€œlibretroā€ mode I was expecting it to work similarly as with FBNeo. I think you may be having the same problem as I have also seen where the rotation is interacting in an unexpected way with the wildcards. I have to look into how it is different than what FBNeo produces.

3 Likes

Hi, in my experience, the libretro rotation option behaves identically to the FBNeo way, which is good for creating presets for both cores :slightly_smiling_face:

1 Like

Yes, it seems the default MAME ā€˜currentā€™ behaviour is changed in favour of the post-rotation, which incidentally is a good thing for koko-aio, but seems to cause unexpected issues with wildcards.

Yes, the MAME core was standardized to work the same as all other arcade cores handling vertical games : other mame cores, all finalburn cores, flycast, kronos.

I believe MAME2016 is now the only exception to the rotation behavior, it should just be a matter of backporting @sonninnosā€™s work from MAME for anyone who cares about it.

The ā€œinternal rotation modeā€ core option was added for backward compatibility with shaders that were specifically written to work exclusively with MAME/MAME2016 and their internal rotation. Hopefully every shaders will be standardized to work with the libretro rotation over time and that backward compatibility setting will become useless. Rotation index being passed to shaders will also simplify detection.

3 Likes

Yeah, the issue is that if you have Allow Rotation set to off it passes the rotation index as it is supposed to, but it is also does the rotation internally which for our uses results in an extra rotation in the shader.

It will probably be adjusted sometime soon to work the same as FBNeo to only do internal rotation if it is set to internal, even if allow rotation is off.

1 Like

Hello kokoko3k just wanted to say I really love your work. I can use your shader on a t618 Android device with the ambi lights on. Thatā€™s really crazy. I have one question though, is it possible to make the tv-slotmask shader a little sharper?

1 Like

Yes of course, if you know how to edit params, here are the ones that affect blurriness (given that youā€™re using koko-aio shipped with retroarch):

fxaa, glow/blur sharpness, halo sharpness.

For details, see docs.md linked in the first post.

Iā€™m gonna give it a go. Thanks

1 Like