fix light shader; still has bugs