Koko-aio shader discussions and updates

It should not, i’ll give it a try. and will edit this post afterwards.

1 Like

I tried add mode, and it looks kinda terrible on the bezel:

Ok, mix mode has been completely broken by the latest update.
I could fix it, but i’m not sure i wanna do it. Maybe we can just use add mode that provides more colorful results(and the foggy parameter more or less tends versus the result obtained by the add mode).

The problem you are facing with the add mode is indeed a minor bug, because it is considering the parameter “. Colorization size” that should indeed be tied to the upper “Colorize Bezel one”, but it is not.

Long story short, this is what you can achieve right now by moving “Colorization size” to 0.0 + use add mode and move ambient lights to a proper level:

This is possible by saving the png image with color informations even under the transparent areas (don’t know how to do in photoshop).

This is the new crt png, as you see completely transparent on the speaker and on the tube, but color informations are present under the speakers:

Preset parameters here:
IN_GLOW_POWER = "1.825000"
LUMINANCE = "0.100000"
TEMPERATURE = "7200.000000"
IN_GLOW_GAMMA = "2.000000"
GAMMA_OUT = "0.510000"
DO_SHIFT_RGB = "1.000000"
OFFSET_STRENGTH = "0.250000"
SHIFT_R = "-20.000000"
SHIFT_G = "1.000000"
SHIFT_B = "20.000000"
DO_IN_GLOW = "1.000000"
IN_GLOW_BIAS = "0.000000"
IN_GLOW_SPREAD = "2.000000"
PIXELGRID_INTR_FLICK_POWR = "0.170000"
DO_PIXELGRID = "1.000000"
PIXELGRID_MIN_H = "0.300000"
PIXELGRID_MAX_H = "0.500000"
PIXELGRID_H_PRST = "2.000000"
PIXELGRID_BASAL_GRID = "0.200000"
PIXELGRID_Y_MASK = "0.000000"
PIXELGRID_Y_MASK_HEIGHT = "1.000000"
DO_HALO = "1.000000"
HALO_POWER = "0.430000"
HALO_SHARPNESS = "6.500000"
HALO_GAMMA = "1.300000"
HALO_VS_SCAN = "0.800000"
BLOOM_MIX = "0.500000"
DO_CURVATURE = "1.000000"
GEOM_CORNER_SMOOTH = "400.000000"
DO_BEZEL = "1.000000"
BEZEL_INNER_ZOOM = "-0.175000"
BEZEL_FRAME_ZOOM = "0.040000"
BEZEL_R = "-0.100000"
BEZEL_G = "-0.100000"
BEZEL_B = "-0.100000"
BEZEL_CON = "1.050001"
DO_BG_IMAGE = "1.000000"
BG_IMAGE_OVER = "1.000000"
BG_IMAGE_WRAP_MODE = "1.000000"
AMBI_STEPS = "10.000000"
AMBI_FALLOFF = "0.320003"
AMBI_POWER = "3.499998"
AMBI_OVER_BEZEL = "0.000000"
AMBI_OVER_BEZEL_SIZE = "0.003000"
AMBI_BG_IMAGE_BLEND_MODE = "1.000000"
DO_VIGNETTE = "1.000000"
V_SIZE = "1.080000"
DO_SPOT = "1.000000"
S_POWER = "0.050000"
DO_GLOBAL_SHZO = "1.000000"
GLOBAL_ZOOM = "1.002000"

What do you say, can we ditch mix mode in favour of add mode?

It would be one parameter less and maybe a bit more performance.

1 Like

I really prefer the old look of mix mode, and I have a bunch of arcade presets that use it too. If it’s too much for you to fix it, I’ll just stick to an older version of koko-aio :frowning:

I mean that the old look can be probably reproduced with the add mode now.

Can you try?

–for instance, your old texture unchanged, with your old preset changed only in the switch from mix to add and set the colorization size to the minimum (almost to minimum), appears similar to the old mix mode to me:

1 Like

I sold my retroid pocket 3 and got a Steam Deck OLED for christmas😅 I was playing around with the monitor-kakashi shader and I think it looks really nice for that lower resolution. Also the tv slotmask shaders look beautiful too because they have no scanlines I think.

2 Likes

You are amazing!

I didn’t know you could save an image with the color information on the transparencies.

How can I test the new code?

link to the dev code in the first post :wink:

1 Like

@kokoko3k I just wanted to get clarification on which settings work best in regular current mame core for proper vertical scanlines for mame vertical games. The only way I have gotten it to look properly is to keep the setting “allow cores to rotate games” turned on in the retroarch core settings and to turn tate mode off completely in the koko-aio shader settings since auto is not working for detecting vertical games which should turn vertical scanlines on. Is that the intended way it is supposed to work?

Yes you are doing it right. Tate will rotate scanlines, so if the virtual bezel is rotated, it rotates scanlines so that they are horizontal.
Tate = auto means it will make the scanlines horizontal even when the screen is rotated.
But if you want vertical scanlines on rotated games; it means you do NOT want TATE at all, so live it disabled.

1 Like

Many thanks for your efforts, much appreciated!!! I double-checked with 4.1, and actually it’s not that different (with fresh eyes). I will further dig into this, including Windows.

If you look at your screenshot: There is only one green plane that flies in an angle, and that one is heavily “combed”. I thought that this effect is more pronounced in ng, but frankly, I am no longer sure. Maybe it’s simply a limitation of the low resolution, which I see for the first time…

PS: On MacOS, screenshots out of RetroArch are broken in Vulkan, that’s why…

Help!

I cannot spot, but to blame low resolution, you can activate fake integer scanlines or integer scaling (both were broken with vertical/tated games, but they should be fixed since 2/3 commits ago) add see if the issue goes away (integer scanlines produce different artifacts by nature tho).

Another try to blame too low resolution is to make the window larger than the screen or activating global zoom, to fake a bigger resolution just to inspect the issue.

Lastly, I remember you that tate mode has been turned auto some time ago, so if you previously used non tated setup (vertical scanlines), you may try to force it off and see how it goes, but moire/weavy artifacts are unfortunately an issue for rotated games at 1080p at fullscreen with or without tate, let alone if the bezel is stealing precious vertical lines.

Another workaround is to turn off curvature just on one of the axis, the one that curves the scanlines.

PS, try to find a way to take higher quality shots if possible (maybe an external Mac app or some system setting?), that way you can present the final result to users much better!

1 Like

Hello, I‘m late to the party, my two cents on backdrops:

  1. I can confirm that backdrop rotation has an issue. That‘s why I rotated them 90 degree clockwise or counter-clockwise if needed. Please see my Github repo that I forked from koko-aio, and basically all important backdrops that I found should be in. As no further backdrops can be expected, it is probably not worth the hassle.

  2. Would it be really correct to nightify the backdrop? Because it is where the light comes from - just wondering :blush:.

Cheers!

I use the tv-pal-my-old preset with my own parameter modification. The effect is great, except that the image is a bit too blurry. Is increasing the gamma indicator a good idea to prevent too much blur? Or maybe it’s better to change the glow/blur parameters —> sharpnes x, y?

The latter is the correct way to modulate the blurriness.

1 Like

Do we have anything for Nintendo DS or 3DS? :slight_smile:

A Valley of Tears!

Never tried to emulate them, so currently no multi screen support, and probably not even an easy task, sorry :confused:

You can use the ‘generic lcd shader’ for one single screen or both screens side by side layouts. One big screen with a small one won’t work though

For horizontal layout at 1080p, this looks good to me. Internal res set to 1X but activated FXAA, using fake integer scanlines and lowered the rgb mask because there is very little useful space.

preset
IN_GLOW_GAMMA = "2.200000"
GAMMA_OUT = "0.450000"
DO_FXAA = "1.000000"
IN_GLOW_BIAS = "0.000000"
IN_GLOW_SPREAD = "2.000000"
IN_GLOW_W = "-0.900000"
IN_GLOW_H = "-0.900000"
DO_PIXELGRID = "1.000000"
PIXELGRID_OVERMASK = "1.500000"
DO_PIXELGRID_H = "0.650000"
PIXELGRID_COREY_FAKE_SCAN = "1.000000"
PIXELGRID_MIN_H = "0.500000"
PIXELGRID_MAX_H = "0.500000"
PIXELGRID_GAMMA_H = "6.500001"
PIXELGRID_NO_INTERBLEED_H = "10.000000"
PIXELGRID_DECON_R_H = "-0.500000"
PIXELGRID_DECON_G_H = "-0.500000"
PIXELGRID_DECON_B_H = "-0.500000"
PIXELGRID_SIZE_W = "0.000000"
PIXELGRID_MIN_W = "0.300000"
PIXELGRID_MAX_W = "0.750000"
PIXELGRID_GAMMA_W = "1.500000"
PIXELGRID_Y_MASK = "0.000000"
PIXELGRID_Y_MASK_HEIGHT = "0.625000"
PIXELGRID_Y_MASK_OFFSET = "0.000000"
PIXELGRID_Y_MASK_STEEP = "1.000000"
DOT_M_G_STR = "0.600000"
DOT_M_G_TRESH = "-1.100000"
DOT_M_G_SHARP = "1.500000"
DOT_M_MBLUR_STR = "0.000000"
DO_HALO = "1.000000"
HALO_POWER = "0.270000"
HALO_SHARPNESS = "7.000000"
HALO_GAMMA = "1.999999"
HALO_GAMMA_OUT = "1.850000"
HALO_VS_SCAN = "1.000000"
DO_BLOOM = "1.000000"
BLOOM_MIX = "0.300001"
BLOOM_SIZE = "1.000000"
BLOOM_GAMMA = "2.500000"
BLOOM_GAMMA_OUT = "1.500000"
BLOOM_POWER = "1.400000"
BLOOM_EYE_ADPT_SRT = "1.500000"
BLOOM_OVER_WHITE = "1.000000"
DO_CURVATURE = "1.000000"
GEOM_WARP_X = "0.000000"
GEOM_WARP_Y = "0.000000"
GEOM_CORNER_SIZE = "0.019000"
GEOM_CORNER_SMOOTH = "311.000000"
DO_VIGNETTE = "1.000000"
V_SIZE = "1.600000"
DO_SPOT = "1.000000"
S_POWER = "0.050000"
ASPECT_X = "-5.000000"
DO_DYNZOOM = "0.000000"

-edit: you can disable ambient light to spare some gpu.

2 Likes

Hi kokoko3k, in the future could there be the possibility of having a switch to activate the double scan line in order to emulate a VGA monitor? I’m referring to Ms-Dos PC games

1 Like