shadow calculation on gpu, but broken