added light computation!!! :D