global functions
glm::angleAxisSIMD(...)
detail::fquatSIMD glm::angleAxisSIMD(const float &angle, const glm::vec3 &axis)
Documentation from code comments
Build a quaternion from an angle and a normalized axis.
Parameters:
angle Angle expressed in radians.
axis Axis of the quaternion, must be normalized.
See also: gtx_simd_quat
glm::angleAxisSIMD(...)
detail::fquatSIMD glm::angleAxisSIMD(const float &angle, const float &x, const float &y, const float &z)
Documentation from code comments
Build a quaternion from an angle and a normalized axis.
Parameters:
angle Angle expressed in radians.
x x component of the x-axis, x, y, z must be a normalized axis
y y component of the y-axis, x, y, z must be a normalized axis
z z component of the z-axis, x, y, z must be a normalized axis
See also: gtx_simd_quat
glm::conjugate(...)
detail::fquatSIMD glm::conjugate(const detail::fquatSIMD &q)
Documentation from code comments
Returns the q conjugate.
See also: gtx_simd_quat
glm::dot(...)
float glm::dot(const detail::fquatSIMD &q1, const detail::fquatSIMD &q2)
Documentation from code comments
Returns dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ...
See also: gtx_simd_quat
glm::fastMix(...)
detail::fquatSIMD glm::fastMix(const detail::fquatSIMD &x, const detail::fquatSIMD &y, const float &a)
Documentation from code comments
Faster spherical linear interpolation of two unit length quaternions.
This is the same as mix(), except for two rules: 1) The two quaternions must be unit length. 2) The interpolation factor (a) must be in the range [0, 1].
This will use the equivalent to fastAcos() and fastSin().
See also: gtx_simd_quat
See also: - mix(detail::fquatSIMD const & x, detail::fquatSIMD const & y, T const & a)
glm::fastSin(...)
__m128 glm::fastSin(__m128 x)
Documentation from code comments
Performs the equivalent of glm::fastSin() on each component of the given __m128.
glm::fastSlerp(...)
detail::fquatSIMD glm::fastSlerp(const detail::fquatSIMD &x, const detail::fquatSIMD &y, const float &a)
Documentation from code comments
Identical to fastMix() except takes the shortest path.
The same rules apply here as those in fastMix(). Both quaternions must be unit length and 'a' must be in the range [0, 1].
See also: - fastMix(detail::fquatSIMD const & x, detail::fquatSIMD const & y, T const & a)
See also: - slerp(detail::fquatSIMD const & x, detail::fquatSIMD const & y, T const & a)
glm::inverse(...)
detail::fquatSIMD glm::inverse(const detail::fquatSIMD &q)
Documentation from code comments
Returns the q inverse.
See also: gtx_simd_quat
glm::length(...)
float glm::length(const detail::fquatSIMD &x)
Documentation from code comments
Returns the length of the quaternion.
See also: gtx_simd_quat
glm::lerp(...)
detail::fquatSIMD glm::lerp(const detail::fquatSIMD &x, const detail::fquatSIMD &y, const float &a)
Documentation from code comments
Linear interpolation of two quaternions. The interpolation is oriented.
Parameters:
x A quaternion
y A quaternion
a Interpolation factor. The interpolation is defined in the range [0, 1].
Type parameters:
T Value type used to build the quaternion. Supported: half, float or double.
See also: gtx_simd_quat
glm::mat4SIMD_cast(...)
detail::fmat4x4SIMD glm::mat4SIMD_cast(const detail::fquatSIMD &q)
Documentation from code comments
Convert a simdQuat to a simdMat4
See also: gtx_simd_quat
glm::mat4_cast(...)
glm::mat4 glm::mat4_cast(const detail::fquatSIMD &q)
Documentation from code comments
Converts a simdQuat to a standard mat4.
See also: gtx_simd_quat
glm::mix(...)
detail::fquatSIMD glm::mix(const detail::fquatSIMD &x, const detail::fquatSIMD &y, const float &a)
Documentation from code comments
Spherical linear interpolation of two quaternions. The interpolation is oriented and the rotation is performed at constant speed. For short path spherical linear interpolation, use the slerp function.
Parameters:
x A quaternion
y A quaternion
a Interpolation factor. The interpolation is defined beyond the range [0, 1].
Type parameters:
T Value type used to build the quaternion. Supported: half, float or double.
See also: gtx_simd_quat
See also: - slerp(detail::fquatSIMD const & x, detail::fquatSIMD const & y, T const & a)
glm::normalize(...)
detail::fquatSIMD glm::normalize(const detail::fquatSIMD &x)
Documentation from code comments
Returns the normalized quaternion.
See also: gtx_simd_quat
glm::quatSIMD_cast(...)
detail::fquatSIMD glm::quatSIMD_cast(const glm::mat4 &m=P)
Documentation from code comments
Converts a mat4 to a simdQuat.
See also: gtx_simd_quat
glm::quatSIMD_cast(...)
detail::fquatSIMD glm::quatSIMD_cast(const glm::mat3 &m=P)
Documentation from code comments
Converts a mat3 to a simdQuat.
See also: gtx_simd_quat
glm::quatSIMD_cast(...)
detail::fquatSIMD glm::quatSIMD_cast(const detail::fmat4x4SIMD &m)
Documentation from code comments
Convert a simdMat4 to a simdQuat.
See also: gtx_simd_quat
glm::quat_cast(...)
glm::quat glm::quat_cast(const detail::fquatSIMD &x)
Documentation from code comments
Convert a simdQuat to a quat.
See also: gtx_simd_quat
glm::slerp(...)
detail::fquatSIMD glm::slerp(const detail::fquatSIMD &x, const detail::fquatSIMD &y, const float &a)
Documentation from code comments
Spherical linear interpolation of two quaternions. The interpolation always take the short path and the rotation is performed at constant speed.
Parameters:
x A quaternion
y A quaternion
a Interpolation factor. The interpolation is defined beyond the range [0, 1].
Type parameters:
T Value type used to build the quaternion. Supported: half, float or double.
See also: gtx_simd_quat
Last updated 星期二, 19 十一月 2024 17:26:11 UTC - 2537ee49f6d46d5fe98e408849448314fd1f180e
If you have any doubt about the usage of this module you can ask in the forum.
If you want to contribute better documentation or start documenting this section you can do so here
If you find anything wrong with this docs you can report any error by opening an issue