Specify the stride for the fullscreen buffer
Remove shaders after linking
Use TRIANGLE_STRIP instead TRIANGLES
Correct the weighting function

Using float textures allows this to work
Limit vertical camera rotation
Shift a large amount of work out of the fragment shader into the vertex shader