Lens flare in NEON GENESIS
NEON GENESIS keeps up with its new techniques for both bloom and adaptation to include lens flares. They now have zero-threshold and use curves instead, have well-balanced color, and moderate intensity.
What's the difference?
As we said in our "Bloom in NEON GENESIS" article, in real life, there is no such thing as a threshold. Light doesn't need a certain amount of itself to react; it simply does. And the intensity of this reaction is wholly dependent on the intensity of the light, not of any arbitrary value.
How does NEON GENESIS fix it?
Following with the fact that thresholds and arbitrary scales are simply a logical fallacy, our scale naturally goes to 1 and our threshold goes to zero. But then, how are we gonna stop our stupidly high intensity from degrading the image quality?
Conveniently, the flare settings contain settings for a 'curve'. Looking deeper into the code, this is simply defined as…

with c representing the curve value.
This makes total sense. Higher values for c will flatten the curve; and as a result, make the flare harder to get to. I decided that

We still need to distill our size (haloWidth) and general amount of flare (distortion). Distortion (d) is the amount the pixels are offset per-channel (red, green, and blue), red being offset -d, green not being offset at all (0), and blue being offset +d. In vanilla, this value is around 1.6, which is alright, but I thought that 2 gave better results. Halo width is simple enough. We just set it to 0.5, this makes a good-sized flare that doesn't overwhelm.
All that's left is saturation, which is ironically, hardest to tune. At high values, the flare looks unnaturally vibrant. I decided to keep the original vanilla value of 1.2 as it's good enough when paired with a d of 2, which already gives us enough chromatic offset.
0 comments