Use projective shadows when possible to get less pixelated shadowmaps.

I the light origin is too far from the shadow caster, the shadowmap uses
only a tiny fraction of the cube map leading to low resolution shadows.
In that case silently transform the light to projective shadows.