Koko-aio shader discussions and updates

I tested on Haswell on 1080p, but it is not enough for 4k

IĀ“m more familiarized with HSM Mega Bezel, but I really want to try yours because IĀ“m planning to use it in a more modest hardware. HSM MB is very demanding in 4K, you need a powerful GPU to run it above 60fps with all bells and whistles.

2 Likes

Haswell is a bit dated so maybe on newer cpu/gpu combos (expecially on AMD) you may be able to run at least 240p content on 4k.

Iā€™m really interested in the results, remember to try both Vulkan and GLCore, because they may give different performances.

2 Likes

I can tell you itā€˜s worth the try. On Silicon Macs, HSM Mega Bezel is nearly undoable, while koko-aio really shines! I am running them on a 4k display with no performance problems at all. The shader also performs well on my iPad Air 3, which is no longer that young :wink:

2 Likes

was using your shader pack since few months now and really loved it. i guess i should have said so earlier but alas some of lazyasses only come when they have a problem to report. really sorry for that and should have made an appreciation post earlier. anyways, i updated the slang shaders using RAā€™s online updater and the shaders stopped working. They failed to load.

UPDATE- lol just while i was typing this i struck to me that i should try older release. so went to github releases, grabbed july 26 release and it works for me again. i canā€™t stop laughing rn. so man, THANKYOU for your shaders anyways.

device- Samsung Tab S7+ (android 13) RA - 1.19.1 Emulating NES system

2 Likes

Thank you, Iā€™m glad youā€™re enjoying the shader.

However, using an older release is just a workaround that is not going to magically solve itself with new releases.
Any chance that you are trying to load older/customized presets instead of the stock ones?

Assuming the shader is working fine for other users, If you care about having the problem solved, you should provide some logs of the failed attempt for me to investigate whatā€™s going on, but itā€™s not mandatory if youā€™re fine in using an older version ofc :wink:

1 Like

Hi @kokoko3k. Following my post, I tested HSM-MB and Koko-aio in an AMD 8600G with 32GB DDR5-6000 in 4K resolution. HSM-MB cannot reach 60fps with a 240p game, it gets around 48fps, even in POTATO preset. Koko-aio reaches 60 fps rock solid. I just tried Vulkan. I guess GLCore would be the same.

2 Likes

Performance wise, youĀ“re absolutely right. However IĀ“m interested in vertical layouts, so HSM-MB seems to be more developed with that in mind. I guess Koko-aio can be implemented too, but some improvements are necessary: Wildcards for .slang files, double monitor support, vector graphics, etc.

1 Like

ā€œseems to be more developed with that in mindā€ is a bit generic.

It would be great if one could have everything everywhere, but generally speaking, the more the features, the less the performance, so everything needs to be evaluated, case by case.

Wildcards are something every slang shader supports, because it comes from Retroarch itself and it is implemented at higher level (slangp, not slang) thanks to the work HSM itself made on that feature.

If you are wondering, Duimonā€™s koko-aio presets make use of it.

3 Likes

Thanks @kokoko3k. I guess IĀ“ve spoken too early and without knowing your shader the way I should.

IĀ“ll look into koko-aio more deeply then.

In any case, it is able to perform in 4K with an integrated GPU, which is awesome!!

1 Like

Working on a preset right now:

Suggestions? more/less glow/bloom? more/less persistance tails?

Iā€™m also not sure about those ā€œjunction pointsā€ between vectors; core renders them, but should they be visible?

6 Likes

Wow!!! I think IĀ“ll convert all my HSM-MB .slang to Koko-aio!!!

Yes the junction points should be visible. There should be an amont of flicker too.

1 Like

What kind of flicker? Shader only supports interlaced one, but on vector games it cannot be it, or maybe is similar?

ā€“editā€“ ah, understood, not bothering with that, since it seems mame 2003 plus already does.

ā€¦however, looking at real hardware, i fear core is not good, see the shot here:

Screenshot_20241113_075858

It produces a big halo, while the ā€œshipā€ does not; explosions are gorgeous too.

Screenshot_20241113_080005

Itā€™s kinda like they are ā€œbrighter than whiteā€

https://www.youtube.com/watch?v=LMhOUuONWGc

3 Likes

Just updated the dev version with 2 presets for vector monitors.
They are tuned to and meant to be used with mame2003+ core with stock options in vector section:

mame2003+ options

Vector_std_4_mame2003plus_defaults.slangp

Vector_neon_4_mame2003plus_defaults.slangp

Since the latter uses tick outlines, it is not really usable with titles like asteroids, because the light would eat all of the details; still it looks good in other scenarios:

ā€¦being the ouptut resolution high (1024x768), I strongly suggest you to use the ā€œno upscaleā€ versions of the presets in Presets_HiresGames_Fast subfolder as there is really no need to do otherwise apart from wasting power.

Also, to implement that neon-like light, thereā€™s a new parameter, ā€œclip to whiteā€, which turns oversaturated colors to white, and for which iā€™ve not found any other use than the one it has been created for.

10 Likes

Hello,

Iā€™d like to report that integer scale seems to be partially broken when the maximum value is set to an under scaled value. For example, Iā€™m using a 1440P monitor and I normally use a 6x integer scale for maximum view port. The default maximum value is 10 and, in this case, it works as intended as the view port shows correctly in 6x integer scale.

When I set maximum value to something like 5 or 4, integer scale doesnā€™t work properly anymore. I noticed this only happens to games with smaller horizontal resolutions (e.g, 256x224). If itā€™s 320 x224, it works fine. When you play a game that switches resolution on the fly (Sega Genesis ā€œContra Hard Corpsā€ for example), you can see the Konami animation isnā€™t scaled properly at the beginning of the game (uneven scanlines) when under scaled values are used, but as soon as you start playing the 1st stage, it switches back to the correct viewport again. Not sure if this is a valid bug or itā€™s something in my shader setting.

Iā€™ll try to reproduce,

Uhm, works fine here, i have a 1080p monitor, so Iā€™m simulating a resolution similar to 1440p.

5X with 256x224 test pattern

4x

5x:

It is not mandatory, but the latest version (just update slang shaders) automagically disables some settings that may interfree with integer scaling for you (eg luminosity tied zoom, curvature, global zoomā€¦ maybe others I donā€™t remember now). Are you using it?

Can you post the problematic preset?

1 Like

Thanks for investigating the issue. I updated the shader within Retroarch yesterday so I believe itā€™s the latest version. You can find my preset below. Your last two Contra screenshots reproduced my bug though. You can see that their viewports are different while using the same 5x integer scale, which shouldnā€™t happen, as the height of both viewports should be 224x5 for both screenshots (The ā€œKonamiā€ one isnā€™t, and uneven scanlines can be seen).

#reference "shaders_slang/bezel/koko-aio/Presets-4.1/monitor-BASE.slangp"
EDGE_DEFOCUS = "2.000000"
DO_PIXELGRID_H = "1.050000"
PIXELGRID_COREY_FAKE_SCAN = "0.000000"
PIXELGRID_MIN_H = "0.450000"
PIXELGRID_MAX_H = "0.450000"
DO_PIXELGRID_W = "0.000000"
PIXELGRID_H_PRST = "0.000000"
DO_HALO = "0.000000"
DO_CURVATURE = "0.000000"
DO_BEZEL = "1.000000"
BEZEL_R = "-0.145000"
BEZEL_G = "-0.145000"
BEZEL_B = "-0.145000"
BEZEL_ROUGHNESS = "5.000000"
BEZEL_DIFFUSION_STR = "0.200000"
DO_BG_IMAGE = "1.000000"
AMBI_FALLOFF = "0.200000"
DO_GAME_GEOM_OVERRIDE = "1.000000"
GAME_GEOM_INT_SCALE = "1.000000"
GAME_GEOM_INT_SCALE_MAX = "5.000000"

My hunch is that something tells the shader to use the horizontal res to scale the viewport, which becomes 256x5 by 224x4.286, to render a 4:3 image

where vertical res should be used >> 256x5.833 by 224x5

1 Like

Ok, I think it should be fixed, at least for non rotated games. @crtJoe

1 Like