Check this wrong commit
It works nicely for 40% strength, but Iāve no license over it, thatās why Iāve had to remove it.
I could take a pic of my room.
Check this wrong commit
It works nicely for 40% strength, but Iāve no license over it, thatās why Iāve had to remove it.
I could take a pic of my room.
Cool and shame - or perhaps the glass overlay with a type of spot? Just thinking out loud, so to speak.
As per the spot, I think you can use the spot function of the shader, It can act as a diffused glare or a little spot.
Thank you for your help. Iām trying to tweak the shader Monitor-Screen_Hmask-Screen_SlotMask_Taller_Brighter , but Iām not getting good results ā the dots seem too far apart. I should mention that the monitor Iām using has a resolution of 1024x768 , which might be causing some issues.
EDIT: Sorry for the confusion ā what I actually meant is that Iām trying to make the horizontal scanlines darker and more pronounced . My English isnāt very good, I apologize if I wasnāt clear.
Oky, letās try to understand each other
Iāll try to craft a preset starting from the same base preset you were trying to tweak.
For such low resolutions (assuming low dot pitch here), trying to emulate phosphors triad can be challenging, and indeed it leads to too wide patterns (I think this is the issue with the ādotsā too far apart you mentioned).
You can mitigate that by using a 2 sized mask => mask type preset set to 1:
Which will give you this:
First is to disable real slotmask emulation:
ā¦next is to enable fake slotmask emulation which, instead of drawing staggered tiny gaps vertically between phosphors, staggers the scanline itself; the value 0.18 is important, read on.
this will give you something like that:
On such low resolution, koko-aio automatically switches to āfake integer scanlinesā, which is a rude way to draw straight lines which align to the real screen lines, but are not curved and wonāt follow the content you are emulating (to make it easy, instead of drawing a line for each core line, it will draw a straight line every 2 screen lines).
That way the weird weavy or moire patterns mentioned earlier are ābypassedā
However the fake slotmask emulation we just enabled in the previous step has the ability to trick the brain, somehow hiding those patterns to the eye, so we are going to tell the shader to draw proper scanlines. (The ā0.18ā earlier set for fake slotmask parameter is the one that is able to hide moire on 768p)
Next tweak is about the scanline gaps; I think your Hantares has well defined gaps, so Iād lower the min/max scanline height to 30ā¦50 range (do not set minimum to less than 25 or moire will be visible, you can still lower the max from 50 to 30 for steeper/darker/better defined scanlines) and contextually Iād disable Haloing and any vertical deconvergence to leave those black gaps, black.
Your hantarex:
Parameters:
However haloing helps in retaining brightness, so Iām going to trade mask definition for a brighter image by highering the maximum
phosphor width:Next step is to push some more bloom to gain even more brightness; white blooming has the ability to give you more lumninance while keeping good mask definition.
With some other smaller final tweaks to the output gamma and color corections you can see in the attached preset, we have the following:
Put the following preset in the same folder as to koko-aio-ng.slangp (or change the #reference line)
#reference "koko-aio-ng-slangp"
GAMMA_OUT = "0.380000"
DO_CCORRECTION = "1.000000"
IN_GLOW_POWER = "2.000000"
LUMINANCE = "0.100000"
TEMPERATURE = "7300.000000"
VIBRANCE = "0.000000"
DO_SHIFT_RGB = "1.000000"
OFFSET_STRENGTH = "0.250000"
DO_IN_GLOW = "1.000000"
IN_GLOW_BIAS = "0.000000"
IN_GLOW_SPREAD = "1.700000"
IN_GLOW_W = "7.000000"
IN_GLOW_H = "7.000000"
DO_PIXELGRID = "1.000000"
PIXELGRID_COREY_FAKE_SCAN = "0.000000"
PIXELGRID_MIN_H = "0.300000"
PIXELGRID_MAX_H = "0.500000"
PIXELGRID_GAMMA_H = "3.000000"
PIXELGRID_OFFSET_CORE = "0.180000"
PIXELGRID_H_DEDOT = "0.700000"
PIXELGRID_H_PRST = "1.000000"
PIXELGRID_MIN_W = "0.050000"
PIXELGRID_MAX_W = "1.000000"
PIXELGRID_BASAL_GRID = "0.020000"
PIXELGRID_Y_MASK = "0.000000"
PIXELGRID_Y_MASK_HEIGHT = "-2.000000"
PIXELGRID_Y_MASK_OFFSET_DEHIVE = "0.700000"
PIXELGRID_Y_MASK_ON_WHITE = "0.000000"
HALO_NO_PREGAIN = "1.000000"
HALO_POWER = "1.000000"
HALO_SHARPNESS = "7.000000"
HALO_GAMMA = "1.000000"
HALO_GAMMA_OUT = "2.350000"
HALO_VS_SCAN = "0.260000"
DO_BLOOM = "1.000000"
BLOOM_MIX = "0.400000"
BLOOM_SIZE = "1.000000"
BLOOM_GAMMA = "4.000000"
BLOOM_GAMMA_OUT = "1.600000"
BLOOM_POWER = "3.500000"
BLOOM_EYE_ADPT_SRT = "0.600000"
DO_CURVATURE = "1.000000"
DO_BEZEL = "1.000000"
BEZEL_REFL_STRENGTH = "0.370000"
BEZEL_DIFFUSION_STR = "0.150000"
DO_GLOBAL_SHZO = "1.000000"
GLOBAL_ZOOM = "0.991500"
DO_VIGNETTE = "1.000000"
V_SIZE = "1.200000"
V_SHAPE = "0.800000"
DO_SPOT = "1.000000"
S_POWER = "0.067000"
ADPT_STROBE_STR = "0.000000"
I think this could be a good starting point for you to further tweak as per your likings, If you havenāt already, please take a look to the docs-ng.md file, which documents all of the parameters.
I just tried your preset and I must say: itās a huge improvement! It now closely resembles the Hantarex CRT in my original photo: the slot mask looks convincing, and the scanlines are finally visible.
Iāll try adjusting the horizontal scanlines ā===ā to make them a little darker and more pronounced; a little more black between the phosphor lines would do the trick.
Thanks again for your time and dedication. Your shader is now very close to what Iām looking for.
I could not make the slang shaders work on rg552 no matter what cfw I tried, but I bought Retroid Pocket 5 meanwhile and there they work great as it supports vulkan (I guess? Iāve no idea how any of it works honestly). I found out apparently it is impossible (in 21st century on linux no less!) to take a screenshot on a handheld, so this is best my oneplus 10t camera can do
Thank you for the wonderful shaders and all your work!Thank you very much, I own an rp5 and a flip2 as well and that screen is simply amazing.
Being so bright, I prefer Presets-ng/Monitor-for_HigherNits.slangp
Also, you can take screenshots by pressing power + Volume Down; also they defaults to png lossless format, so youāre good to go
Another tip is to go into shader menu and set shader delay to 50ā¦100 or even more; that way android will be responsive between the game loading and the shader compilation; mitigating the āapplication not respondingā spam dialog bug on android 13.
Couldnāt you add an RRBBGGX horizontal mask (~300TVL at 4K) for (most) WOLED users?
Iām afraid not; the way it handles the mask leverages the gpu internal vec4 datatype, which handles 4 values, so either it could be rgbx or rgb (which can be doubled, leading to rrrbbggxx or rrgggbb)
These screenshots look amazing! Can you post some high quality photos or video clips including closeups showing the āphosphorsā so that we can get an even better appreciation for what youāre experiencing?
Also, are you sharing these presets somewhere?
This is pretty stunning as well, almost makes trying to make a Koko-aio preset pack seem like a redundant endeavour.
Wow, thanks! That 500TVL really stresses 1080p, indeed moire is visible on solid backgrounds on particular colors (Super Hang on!).
Initially, my intent was to create boilerplate presets to show what was possible and let other users tweak them to create new ones. However, I probably got carried away and stole all the fun.
Scanline gaps in general are bad for the long term health of OLED displays. Over time thereās a high risk of them becoming permanently embedded (burnt-in) due to uneven wear of the subpixels. The venerable @HunterK actually made a shader (after I requested) which alternated the active scanlines with the scanline gaps by vertically shifting the image by a certain number or fraction of pixels every so often. The timer could also be disabled so that the pixel shift could happen manually. It was a bit jarring when it happened mid game. I also remember some rendering artifacts being produced sometimes.
Is that something you think you might want to incorporate and iterate upon to have a smoother implementation?
Well, the real risk is when you have permanent gaps.
This can be the effect of not letting the scanlines growing enough to fill them and/or keeping the very same image (or part of) still on the screen.
Maybe sloooowly move the content following a circle shape whose the radius is the same as a core pixel would mitigate both the problems.
The same concept via a single oscillation over the Y axis would just take care of the scanline gaps.
Yeah, I think it could be done without performance hits.
Iām on linux firmware (rocknix), so the little freeze is okay as it doesnāt make any messages. I managed to make the shortcut take the shaders with screenshot by some tinkering with settings.
Really like the Presets-ng/Monitor-for_HigherNits.slangp, I only increased output gamma as the game was too dark, maybe itās just the game/system itself.
One thing that is bothering me is there is always a little dark cube in lower right corner, what is that ?
edit: looks absolutely stunning with widescreen cheat, literally looks like Iām holding small crt in my hands, the display on RP5 is out of this world!
No clue, i cannot even spot it by the screenshots (?)
edit: it almost looks like a some sort of vignette, itās in each corner, but like for some reason the bottom right corner didnāt āfadeā properly?
Interesting, there is no such thing here on Desktop Linux or under Android.
It has to be some turnip driver related thing.
-EDIT
Indeed i can spot one on the rp5 under android but on the pper right corner to me lol.
Man, but it does drive me crazy, such a small thing lol. Iāll have some time later today, Iāll try and disable some things in shader parameters to see if I can tie it to a particular effect.
edit: Noticed on other system (pcengine) the little cube is in upper right corner