Unity坐标系规范化四元数
inline float MagnitudeSqr(glm::quat q)//模长平方
{
return Dot(q, q);// q.x*q.x+q.y*q.y+q.z*q.z+q.w*q.w;
}
inline float Magnitude(glm::quat q)//模长
{
return glm::sqrt(MagnitudeSqr(q));
}
inline glm::quat Normalize(glm::quat q)
{
float Length = Magnitude(q);
if ((double) Length > 9.99999974737875E-06)
{
return q/Length;
}
else
{
return glm::quat(1.0, 0.0, 0.0, 0.0);
}
}