Functions

glm::gtx::simd_vec4 Namespace Reference

GLM_GTX_simd_vec4 extension: SIMD implementation of vec4 type. More...

Functions

detail::fvec4SIMD abs (detail::fvec4SIMD const &x)
 Returns x if x >= 0; otherwise, it returns -x.
detail::fvec4SIMD ceil (detail::fvec4SIMD const &x)
 Returns a value equal to the nearest integer to x.
detail::fvec4SIMD clamp (detail::fvec4SIMD const &x, detail::fvec4SIMD const &minVal, detail::fvec4SIMD const &maxVal)
 Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.
detail::fvec4SIMD cross (detail::fvec4SIMD const &x, detail::fvec4SIMD const &y)
 Returns the cross product of x and y.
float distance (detail::fvec4SIMD const &p0, detail::fvec4SIMD const &p1)
 Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
detail::fvec4SIMD distance4 (detail::fvec4SIMD const &p0, detail::fvec4SIMD const &p1)
 Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
detail::fvec4SIMD dot4 (detail::fvec4SIMD const &x, detail::fvec4SIMD const &y)
 Returns the dot product of x and y, i.e., result = x * y.
detail::fvec4SIMD fastInversesqrt (detail::fvec4SIMD const &x)
 Returns the reciprocal of the positive square root of x.
float fastLength (detail::fvec4SIMD const &x)
 Returns the length of x, i.e., sqrt(x * x).
detail::fvec4SIMD fastLength4 (detail::fvec4SIMD const &x)
 Returns the length of x, i.e., sqrt(x * x).
detail::fvec4SIMD fastNormalize (detail::fvec4SIMD const &x)
 Returns a vector in the same direction as x but with length of 1.
detail::fvec4SIMD fastSqrt (detail::fvec4SIMD const &x)
 Returns the positive square root of x Less accurate but much faster than sqrt.
detail::fvec4SIMD floor (detail::fvec4SIMD const &x)
 Returns a value equal to the nearest integer that is less then or equal to x.
detail::fvec4SIMD fma (detail::fvec4SIMD const &a, detail::fvec4SIMD const &b, detail::fvec4SIMD const &c)
 Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of floating point representations.
detail::fvec4SIMD fract (detail::fvec4SIMD const &x)
 Return x - floor(x).
detail::fvec4SIMD inversesqrt (detail::fvec4SIMD const &x)
 Returns the reciprocal of the positive square root of x.
float length (detail::fvec4SIMD const &x)
 Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two, such that: x = significand * exp(2, exponent) The significand is returned by the function and the exponent is returned in the parameter exp.
detail::fvec4SIMD length4 (detail::fvec4SIMD const &x)
 Returns the length of x, i.e., sqrt(x * x).
detail::fvec4SIMD max (detail::fvec4SIMD const &x, detail::fvec4SIMD const &y)
 Returns y if x < y; otherwise, it returns x.
detail::fvec4SIMD min (detail::fvec4SIMD const &x, detail::fvec4SIMD const &y)
 Returns the fractional part of x and sets i to the integer part (as a whole number floating point value).
detail::fvec4SIMD mix (detail::fvec4SIMD const &x, detail::fvec4SIMD const &y, detail::fvec4SIMD const &a)
 (From GLM_GTX_simd_vec4 extension, common function)
detail::fvec4SIMD mod (detail::fvec4SIMD const &x, detail::fvec4SIMD const &y)
 Modulus.
detail::fvec4SIMD mod (detail::fvec4SIMD const &x, float const &y)
 Modulus.
float niceLength (detail::fvec4SIMD const &x)
 Returns the length of x, i.e., sqrt(x * x).
detail::fvec4SIMD niceLength4 (detail::fvec4SIMD const &x)
 Returns the length of x, i.e., sqrt(x * x).
detail::fvec4SIMD niceSqrt (detail::fvec4SIMD const &x)
 Returns the positive square root of x with the nicest quality but very slow.
detail::fvec4SIMD normalize (detail::fvec4SIMD const &x)
 Returns a vector in the same direction as x but with length of 1.
detail::fvec4SIMD reflect (detail::fvec4SIMD const &I, detail::fvec4SIMD const &N)
 For the incident vector I and surface orientation N, returns the reflection direction : result = I - 2.0 * dot(N, I) * N.
detail::fvec4SIMD refract (detail::fvec4SIMD const &I, detail::fvec4SIMD const &N, float const &eta)
 For the incident vector I and surface normal N, and the ratio of indices of refraction eta, return the refraction vector.
detail::fvec4SIMD round (detail::fvec4SIMD const &x)
 Returns a value equal to the nearest integer to x.
detail::fvec4SIMD sign (detail::fvec4SIMD const &x)
 Returns 1.0 if x > 0, 0.0 if x = 0, or -1.0 if x < 0.
float simdDot (detail::fvec4SIMD const &x, detail::fvec4SIMD const &y)
 Returns the dot product of x and y, i.e., result = x * y.
detail::fvec4SIMD simdFaceforward (detail::fvec4SIMD const &N, detail::fvec4SIMD const &I, detail::fvec4SIMD const &Nref)
 If dot(Nref, I) < 0.0, return N, otherwise, return -N.
detail::fvec4SIMD smoothstep (detail::fvec4SIMD const &edge0, detail::fvec4SIMD const &edge1, detail::fvec4SIMD const &x)
 Returns 0.0 if x <= edge0 and 1.0 if x >= edge1 and performs smooth Hermite interpolation between 0 and 1 when edge0 < x < edge1.
detail::fvec4SIMD sqrt (detail::fvec4SIMD const &x)
 Returns the positive square root of x.
detail::fvec4SIMD step (detail::fvec4SIMD const &edge, detail::fvec4SIMD const &x)
 Returns 0.0 if x < edge, otherwise it returns 1.0.
detail::fvec4SIMD trunc (detail::fvec4SIMD const &x)
 Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolute value of x.
detail::tvec4< float > vec4_cast (detail::fvec4SIMD const &x)
 Convert a simdVec4 to a vec4.

Detailed Description

GLM_GTX_simd_vec4 extension: SIMD implementation of vec4 type.