optimized shadowmap generation
A lot of work on shadowmaps