Using vec3 for direction light in order to support normalize