Real time lens flares

Combining lens flares from tutorial made by John Chapman and hexagonal blur DICE uses in Frostbyte you get the following. The nice features of this type of lens flare it that it doesn’t rely on any extra information about the image such as positions of the light sources. It works solely on the pixel data. However, it is pretty heavy effect. It requires 2 blur passes, combination pass and final lens flare pass to work. With WebGL 2.0 being able to write multiple outputs from single shader, the number of blur passes can be reduced to 1. I also sped it up a bit by using only half resolution for the blur and combination passes.