My and @kokoko3k’s preset options are already Baroque Grade, adding tons of sub-parameters would make it more confusing. Sometimes it’s a tough decision what to offer as an option and what to hardwire or put into a config file.
To be honest, at first I know about your shader I thought your had too many options (This is what it should be because it has “advanced” in the name), but now I’d like more options 
https://mega.nz/file/Vb1THALB#KfrED_w8jH3XG66oTVDkvmfAJnAKzJblLQsT1gsu9CY

It is actually an improvement over the one in Koko-Aio (and I will probably import that)
- Range:
The more the range, the more the image will be darkened; 0.0 leave the image as is. - Method:
0.0 is destructive, it will crush dark tones to black. 1.0 keeps more detail, because it affects the gamma
…however 1.0 would perform much better with an output float framebuffer, which I couldn’t setup by myself, because it can have HDR implications if used as the last pass.
A thing that could be done would be to temporally smooth the effect, but if possible and acceptable as is, I’d rather not, so please, check 
Append or prepend is your choice, but beware, that it is a 2 pass shader with mipmap generation, so it may be heavy if done at framebuffer scale.
it’s good, thanks!
I think temporally smooth will worth it if all flyback adaptive voltage effects is done (so it’s up to @guest.r, or to be added in your koko-aio and used to make preset from ground up with koko-aio)
anyway, I am happy with adaptive_black-koko for now as it is, but still I hope someday for full 03-05 and 08 effects from my list above
will this be added in https://github.com/libretro/slang-shaders ?
I want to do update to my preset with it 
here real crt same scene https://youtu.be/W4QD_64q0kI?t=2118 https://youtu.be/EJ290IoaEGM?t=2296 https://youtu.be/y6d50qYGdMg?t=893 https://youtu.be/Ra6ddxgmHSI?t=3894 , all ps1, this n64 https://youtu.be/OWXgpu0Dzm0?t=3154
Yes, I will submit a PR in a few days.
Is there a technical term better than adaptive black for it?
dont know, maybe CRT black?
after I play with it more, it seems “temporally smooth the effect” is needed, sometimes there will be flickering
This is with temporal smoothing, it is hardcoded to a value which seems ok to me and if retroarch and core provide support for getting the core fps, the smoothing will be scaled accordingly.
Can you please test with 30fps cores content too (switch on fps overlay in retroarch to make sure)?
Also, the method parameter is gone; negative values switches to gamma modulation, while positive ones will crush dark tones.
https://mega.nz/file/lKlRTBrI#L3WgXrxlDWxyjDunKptZr2cBZObyQj_g2VQLZWymvZ4
thank you so much! it’s nice now
I think all games output as 60 or 50 regardless of real fps in the game
anyway holding “E” in keyboard will slow things down, the smoothing seems fine with that
Not really, eg: flycast switches between 25,30,50,60 (I know for sure, since koko-aio itself modulates temporal effects like interlacing based on that).
Holding E will not cause the shader to know what new fps are, so it will slow down the temporal smoothing too, which is exactly the opposite of the intended effect (having the smoothing to complete in the same real time, regardless of the source frames per second).
Unfortunately for now I dont know a game and a core that do that
What’s the game in the screenshot and the core you are running?
What if you enable fps display?
this? it’s resident evil 2 with beetle psx core (not the hw one)
it’s 60 more or less
Ooky, so 60 is fine; i’ll try to search for a 30fps content to match that smoothing speed as close as possible, then PR.
–EDIT–
And just “backported” to koko-aio too.
It works nicely with these settings: you push the brightness to counteract CRT black crush, and lower the contrast to avoid white clipping.
So you intentionally broke something, then you do something else to patch it badly 
Shouldn’t this just affect the framebuffer and not the output the video signal? Like consoles like the PS1, Dreamcast, and N64 all support running at a lower framerate, but the TV signal itself is always around 50 Hz or 60 Hz. Frames from the buffer get double or tripled on the output.
Maybe the DC works differently in VGA mode though.
I’m not sure I understood the reason for the question, but shader works at the video signal framerate for the whole chain, last framebuffer output included, and unfortunately there’s no way for it to upscale it to the emulated CRT refresh screen, nor it has access to the current or elapsed time.
So if you want a temporal effect to last for a predictable (real) time, you have to scale its duration (in frames) by the input fps.
-EDIT- Flycast core has a specific option to notify retroarch about its output FPS.



