normalize function
Normalize a vec3
@param {vec3} out the receiving vector @param {ReadonlyVec3} a vector to normalize @returns {vec3} out
Implementation
List<double> normalize(List<double> out, List<double> a) {
final x = a[0];
final y = a[1];
final z = a[2];
double len = x * x + y * y + z * z;
if (len > 0) {
//TODO: evaluate use of glm_invsqrt here?
len = 1 / math.sqrt(len);
}
out[0] = a[0] * len;
out[1] = a[1] * len;
out[2] = a[2] * len;
return out;
}