I found a bug when using curvature.
-
https://pasteboard.co/JC1agDo.png -Curvature
-
https://pasteboard.co/JC19Y8g8.png -Without curvature
Everything else works fine.
I found a bug when using curvature.
https://pasteboard.co/JC1agDo.png -Curvature
https://pasteboard.co/JC19Y8g8.png -Without curvature
Everything else works fine.
Thanks! It was a quite elusive bug, present with glcore and vulkan, D3D11 seems OK. Thankfully adapting the preset a bit should solve it.
What do you think about removing the bright boosts altogether? With all of the autocorrection stuff happening behind the scenes, it seems like bright boost can only make the image objectively worse.
I’m getting the best results I’ve seen by disabling bright boost (setting both to 1.00) and working solely with the beam shape parameters.
Brightboost is ok, if you throw in the slotmask for example. I made the automatic color corrections a bit humbler, since they are hard-coded, now complying with scanline type0. If you use something more than 1080p and thinner scanlines, it’s a set of different circumstances.
I needed to adjust the crt-guest-dr-venom preset in a curious situation with glcore and vulkan video APIs, where small glitches appeared when using curvature.
New version download (25.11.2020_release_2):
https://mega.nz/file/olhV3aoL#ji4SNj31GHY1RDpMajnBIOtSV8NVjBhIGYuFbBp9Cqg
Hopefully no new bugs…
What did you have to do to fix it?
I’ve run into these garbage pixels in other scenarios and have had sporadic luck fixing them, right now the Mega Bezel Guest SM preset exhibits these
Very strange. I had a very similar preset for the NTSC version, which didn’t produce the glitches. It isn’t a viewport scaling bug for example, because i just created a preset with all the pre-passes sourcescaling to 1.0, last pass to 4.0.
In the test case i removed the ‘avg-lum’ pass and bug was gone.
So i think there might be problematic passes, which somehow cause rounding errors. The NTSC pass for example had the linearize shader after the problematic pass and the glitchess appeared if reading before this pass.
PS: And i think i’ve nailed it now. I disabled mipmapping in the ‘problematic’ pass and the glitches were gone.
It seems to mess with the coordinates somehow, causing rounding errors.
Ah yes, now I remember in one of the cases I managed to get rid of it it was by turning off mipmapping on a pass
Looking good so far, no glitches found
If the only thing I would want to do from your default preset is to turn mask from “0” to “-1” (disable mask), what would be your suggested lowering of bright boost dark pixels and bright boost bright pixels? Currently they are at 1.40 and 1.15, how much lower for both would you advice when only disabling the mask? (While keeping the spirit of your preset).
1.15 or 1.20 for bb-dark and 1.0 for bb-bright seems nice. It’s good to know that multiplying in linear space doesn’t translate to relative gamma 1.0 space directly.
Multiplier of 1.4 in linear space of 2.4 gamma translates to 1.15 in ‘normal’ space.
Would it be possible to have a parameter by which it is configurable by how much bright pixels flow into dark pixels horizontally? I think it would be useful if this could be set to personal preference.
With the current settings it makes the bright pixels sometimes too wide versus darker pixels in, for example vertical lines that have brighter segments “bulge” too much at certain points (too wide bright pixels), creating discontinuity in the straightness of the vertical lines.
There are some parameters, that control the general behavior:
Raising the gamma values also produces more even vertical lines.
Thanks. I’m only after limiting invasiveness of bright pixels horizontally (horizontal bulges).I think I already tried your suggestions.
Substractive sharpness gives artifacts in some situations, so I normally like to keep keep it at “0”. For higher values it deletes complete pixels, mainly to be seen in 8-bit games. For example if you have the order of horizontally 1) white pixel, then a 2) black pixel, then a 3) darker pixel. Then 1 flows into 2) black pixel and 3) darker pixel gets deleted partially or completely (there is no smooth flowing as I think with real CRT: it will never delete pixels completely because of brighter pixels next to it).
If I put scanlike spike removal at 2 it gets a little bit better, but not enough.
I need to put horizontal sharpness at 9.00 to remove the issue almost completely , but then the sharpness is really sharp LCD / PC like.
So even with above maximum measures the invasiveness of bright pixels can still be too much horizontally. It creates inconsistenties in vertical lines across the screen.
See below picture with example of what happens with your default preset:
Once you start noticing it, it makes the entire image more “wobbly”, because straight vertical lines are not straight anymore, and because of the related missing pixels.
I tried your suggestions, but the issue will remain unless you turn substractive sharpness to “0” and “horizontal sharpness” to “9.00”.
My suggestion would be to tone down the invasiveness of bright pixels on their horizontal neighbour pixels or make it better configurable? Hopefully there is some room for improvement on this area.
You can’t have this as simple if you want fancy filtering. If you increase horizontal sharpness to maxx., you won’t have these issues though. Similar with basic scanlines.
Or you can try crt-guest-sm glsl.
I’m constantly improving the shader and many things are still on the TODO list. Some aren’t trivial though.
Thumbs up for the crt reference image…
CRT’s were dissolving dithering patterns, today’s crt shaders are generally not doing such an intensive blending. Due to high gamma of the crt displays the darker pixels got mitigated.
Are you implying that when drawing darker pixels in your paint program on a Vintage or Studio CRT that these pixels would simply not show up? (mitigated?)
Or are you saying that when you would implement intensive blending in your shader (dissolving dithering) that it would improve your shader?
Just trying to understand what you’re saying.
I’m saying that crt obviously didn’t have razor sharp transitions between pixels. Due to nature of the gamma specific ‘interpolation’ the blended area endorsed brighter color components.
But’s it really simple, if you want sharper transitions than you can’t have smooth blending without a minor issue.
Something like this is currently discontinued due the general slowdown it would make:
OK it’s doable with the current version, but dunno, eats 6% performance, needs an extra parameter etc.
Very nice reference pictures . I don’t see pixels disappearing completely though, did you find any while comparing raw output (point scaled) versus the CRT ones?
What is really interesting is too see how much less saturated the image of the CRT is! Particularly:
Do you have an idea what’s causing this? Does the CRT have a higher white point? Or do you have brightness turned up by a lot on the CRT?
That sounds wicked! Maybe it’s an idea to put this behind a switch close to the horizontal filtering parameter “HQ filtering ON/OFF (6% performance hit)”?
Photos of CRTs always look bluer/cooler than screenshots for some reason. It’s a bit of a mystery.
I mentioned mitigated. I think the below comparison should reveal a bit more. Isolated dark pixels do not have the same presence power when blending in linear space.
CRT:
LCD:
Ofc. you can use substractive sharpness with my shader if you overdo the base blur.
I removed the color artifacts, but it’s a bit against the common sense when complaining against blur when increasing blur and wanting more blur.