Functions

glm::core::function::common Namespace Reference

Define common functions from Section 8.3 of GLSL 1.30.8 specification. Included in glm namespace. More...

Functions

template<typename genFIType >
genFIType abs (genFIType const &x)
 Returns x if x >= 0; otherwise, it returns -x.
template<typename genType >
genType ceil (genType const &x)
 Returns a value equal to the nearest integer that is greater than or equal to x.
template<typename genType >
genType clamp (genType const &x, genType const &minVal, genType const &maxVal)
 Returns min(max(x, minVal), maxVal) for each component in x.
template<typename genType , typename genIType >
genIType floatBitsToInt (genType const &value)
 Returns a signed or unsigned integer value representing the encoding of a floating-point value.
template<typename genType >
genType floor (genType const &x)
 Returns a value equal to the nearest integer that is less then or equal to x.
template<typename genType >
genType fma (genType const &a, genType const &b, genType const &c)
 Computes and returns a * b + c.
template<typename genType >
genType fract (genType const &x)
 Return x - floor(x).
template<typename genType , typename genIType >
genType frexp (genType const &x, genIType &exp)
 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.
template<typename genType , typename genIUType >
genType intBitsToFloat (genIUType const &value)
 Returns a floating-point value corresponding to a signed or unsigned integer encoding of a floating-point value.
template<typename genType >
genType::bool_type isinf (genType const &x)
 Returns true if x holds a positive infinity or negative infinity representation in the underlying implementation's set of floating point representations.
template<typename genType >
genType::bool_type isnan (genType const &x)
 Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of floating point representations.
template<typename genType , typename genIType >
genType ldexp (genType const &x, genIType const &exp)
 Builds a floating-point number from x and the corresponding integral exponent of two in exp, returning: significand * exp(2, exponent) If this product is too large to be represented in the floating-point type, the result is undefined.
template<typename genType >
genType max (genType const &x, genType const &y)
 Returns y if x < y; otherwise, it returns x.
template<typename genType >
genType min (genType const &x, genType const &y)
 Returns y if y < x; otherwise, it returns x.
template<typename genTypeT , typename genTypeU >
genTypeT mix (genTypeT const &x, genTypeT const &y, genTypeU const &a)
template<typename genType >
genType mod (genType const &x, genType const &y)
 Modulus.
template<typename genType >
genType mod (genType const &x, typename genType::value_type const &y)
 Modulus.
template<typename genType >
genType modf (genType const &x, genType &i)
 Returns the fractional part of x and sets i to the integer part (as a whole number floating point value).
template<typename genType >
genType round (genType const &x)
 Returns a value equal to the nearest integer to x.
template<typename genType >
genType roundEven (genType const &x)
 Returns a value equal to the nearest integer to x.
template<typename genFIType >
genFIType sign (genFIType const &x)
 Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0.
template<typename genType >
genType smoothstep (genType const &edge0, genType const &edge1, genType 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.
template<typename genType >
genType step (genType const &edge, genType const &x)
 Returns 0.0 if x < edge, otherwise it returns 1.0.
template<typename genType >
genType trunc (genType const &x)
 Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolute value of x.

Detailed Description

Define common functions from Section 8.3 of GLSL 1.30.8 specification. Included in glm namespace.