Koko-aio shader discussions and updates

Roger that, I will take proper screenshots soon.

Well, since this particular laptop is old, some windows 10 update broke frame pacing with OpenGl, and only D3D works smoothly now without stuttering.


@kokoko3k

EDIT: it turned out that the game I tried “Daytona USA (USA)” was somehow reducing or eliminating the effect.

So here are some correct screenshots:

Despite the intense ghosting you see in the still frame screenshots, the effect is quite subtle and “fast” in action.

I want to say congrats on making the most convincing interlacing emulation I had tried so far. I think it’s finally unlocking my fuzzy memories on how it looked back then on consumer CRTs.

2 Likes

I did more tests with my LED panel, and I can confirm that the effect looks better on CRT thanks to its natural motion clarity. While on LED it’s a bit disorienting (excessive motion blur) which isn’t surprising.

It’s a good thing that you made the effect adjustable.

1 Like

Yup! That exactly what I was hoping for and the intended use case, thanks for testing deeper.

1 Like

I like the new mid overlay feature, it worked great with MBZ’s diffuse image:

2 Likes

Late feedback regarding the dedithering/transparency features:

I have extensively tested both dedither and MD transparency features, and both proved to be useful. Some dithering patterns will only respond to one feature.

For example the Silent Hill ps1 dithering will only blend with MD transparency.

While the Atari ST OS wallpaper “tos206us.img”, only blended with the Dedither feature.

In cases where both worked, dedither tends to be sharper and easier on thin text, while MD Transparency is overall more effective but blurry. So I hope both will stay in the future.

1 Like

Is every pack going be having a reflective image now? It does give a good fell to the graphics. The problem that comes with it is what to reflect, of course.

Indeed, I’ve still to find something that appeals to me.

1 Like

I made this PVM style diffuse image for everyone to use:

The screenshots are using these overrides:

DO_BACKDROP = "0.300000"
BACKDROP_JUST_TUBE = "1.000000"

//The following override requires the correct path to images:

backdrop = "PATH/TO/PVM_Diffuse_1024.png"
3 Likes

2 Likes

Oh you need the latest koko-aio dev build. Just grap the entire repo and replace your current koko-aio shader folder:

shaders/shaders_slang/bezel/koko-aio

But be careful if your current koko-aio version is old, your packs might depend on that, the shader received quite some changes since version 1.9.30 that broke some packs like Duimon’s.

My packs are safe to use with the latest dev build and Duimon is working hard to update his pack too.

2 Likes

Is there a way to move the Gradius Gaiden game screen to the right so that it is in the correct position when ambient lighting is on? This game has a black blank space on the right side of the screen.

1 Like

Override game geometry/horizontal position.

Maybe you want to zoom it too to fill the screen by moving other knobs under the same section.

Documentation is here: https://github.com/kokoko3k/koko-aio-slang/blob/main/docs-ng.md

1 Like

Regarding this, I just pushed a change that allows you to target a specific TVL:

From documentation just pushed as well:

TVL: core resolution only. >0 overrrides previous.
    ---------------------------
	If you use core resolution and this parameter is not 0.0,
	the phosphor width will be computed so that the screen will
	contain the specified rgb triads amount.
	Using core resolution means that the triads will follow the
	screen curvature, hence possibly exposing moire artifacts at higher TVLs.
	To mitigate that, it is advised to set a proper
	"Phosphor width min" value.
    Tests shows that on a 1080p screen you can easilly target a typical of mid-range consumer TVs
    with a TVL of 410, provided that you set minimum phosphor width of at least 30
    and a phosphor width min->max less than 5.0.

This is an example of targetting a “TVL” of 410, I think the best you can expect from a 1080p with standard curvature values, no bloom, halos, just the mask:

The preset has just been pushed and named as Presets-ng/Monitor-slotmask-TVL410.slangp with a bit of bloom added:

4 Likes

Interesting…what would you put those settings at for a 2160p display ouput?

Find rhe maximum you can get without seeing moire; for the task ypu can use a provided test pattern (first parameter) to quickly spot it; the best is the one that show a temporal black/white fade.

Once you found the maximum TVL, decrease it till it pleases you.

I think you can go up to even 550, but then it depends on your eyesight and screen dimensions.

If ypu let me now the upper level without moire, I can add it as a reference in the docs, thanks!

1 Like

On my Sony Bravia 4k (55inch) OLED @2160p = TVL 883 seems close to the sweet spot (input signal gain at 1.0 ).

One last thing - with the new interlacing tweaks, all I get on games like Ridge Racer is flashing colours - any pointers?

Uhm, old Retroarch? Shader needs to estimate the frame timing to activate that feature only when it is low enough (50,60fps) and skip it on higher ones (25,30fps).

Yeah, I use the //#define _HAS_ROTATION_UNIFORM

Any work around?

I cannot check right now if that’s the problem, but either way, the best I could do to support older versions is to skip any check through a static option, not very useful…

Ok, no worries.

Thanks again.

1 Like