rebuild soft shadow only when needed