function slerp$1(out, a, b, t) {
    var angle = Math.acos(Math.min(Math.max(dot$4(a, b), -1), 1));
    var sinTotal = Math.sin(angle);
    var ratioA = Math.sin((1 - t) * angle) / sinTotal;
    var ratioB = Math.sin(t * angle) / sinTotal;
    out[0] = ratioA * a[0] + ratioB * b[0];
    out[1] = ratioA * a[1] + ratioB * b[1];
    out[2] = ratioA * a[2] + ratioB * b[2];
    return out;
  }
Performs a spherical linear interpolation between two vec3's

@param {vec3} out the receiving vector
@param {ReadonlyVec3} a the first operand
@param {ReadonlyVec3} b the second operand
@param {Number} t interpolation amount, in the range [0-1], between the two inputs
@returns {vec3} out