FOV changes and window size changes are not often nor are they something we need to optimize for.

I guess this is OKish because it's not that big in screen-space, but did you test on mobile?  I bet it causes a hit.  This just feels like a total waste of processing.  Why do something every fragment every frame that we can burn into a texture?  Some of the procedural textures fall into this category too, but the sun is something that is in every scene.  At the least, I would make a note of this optimization in a `PERFORMANCE_TODO` comment.  Given our performance focus, we can't take things like this lightly.  We go to great pains all over the place to be fast.