public static Quaternion LnDif(Quaternion a, Quaternion b) { Quaternion q = Quaternion.Inverse(a) * b; CPMath.Normalize(q); return(CPMath.Log(q)); }
public static Quaternion Nlerp(Quaternion p, Quaternion q, float t) { float num = 1f - t; Quaternion quaternion; quaternion.x = num * p.x + t * q.x; quaternion.y = num * p.y + t * q.y; quaternion.z = num * p.z + t * q.z; quaternion.w = num * p.w + t * q.w; CPMath.Normalize(quaternion); return(quaternion); }