common.hpp File Reference

Core features More...

Go to the source code of this file.

## Functions

template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType | abs (genType x)
| Returns x if x >= 0; otherwise, it returns -x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | abs (vec< L, T, Q > const &x)
| Returns x if x >= 0; otherwise, it returns -x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | ceil (vec< L, T, Q > const &x)
| Returns a value equal to the nearest integer that is greater than or equal to x. More...
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType | clamp (genType x, genType minVal, genType maxVal)
| Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | clamp (vec< L, T, Q > const &x, T minVal, T maxVal)
| Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | clamp (vec< L, T, Q > const &x, vec< L, T, Q > const &minVal, vec< L, T, Q > const &maxVal)
| Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal. More...
GLM_FUNC_DECL int | floatBitsToInt (float v)
| Returns a signed integer value representing the encoding of a floating-point value. More...
template<length_t L, qualifier Q>
GLM_FUNC_DECL vec< L, int, Q > | floatBitsToInt (vec< L, float, Q > const &v)
| Returns a signed integer value representing the encoding of a floating-point value. More...
GLM_FUNC_DECL uint | floatBitsToUint (float v)
| Returns a unsigned integer value representing the encoding of a floating-point value. More...
template<length_t L, qualifier Q>
GLM_FUNC_DECL vec< L, uint, Q > | floatBitsToUint (vec< L, float, Q > const &v)
| Returns a unsigned integer value representing the encoding of a floating-point value. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | floor (vec< L, T, Q > const &x)
| Returns a value equal to the nearest integer that is less then or equal to x. More...
template<typename genType >
GLM_FUNC_DECL genType | fma (genType const &a, genType const &b, genType const &c)
| Computes and returns a * b + c. More...
template<typename genType >
GLM_FUNC_DECL genType | fract (genType x)
| Return x - floor(x). More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | fract (vec< L, T, Q > const &x)
| Return x - floor(x). More...
template<typename genType >
GLM_FUNC_DECL genType | frexp (genType x, int &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) More...
GLM_FUNC_DECL float | intBitsToFloat (int v)
| Returns a floating-point value corresponding to a signed integer encoding of a floating-point value. More...
template<length_t L, qualifier Q>
GLM_FUNC_DECL vec< L, float, Q > | intBitsToFloat (vec< L, int, Q > const &v)
| Returns a floating-point value corresponding to a signed integer encoding of a floating-point value. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, bool, Q > | isinf (vec< L, T, Q > const &x)
| Returns true if x holds a positive infinity or negative infinity representation in the underlying implementation's set of floating point representations. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, bool, Q > | isnan (vec< L, T, Q > const &x)
| Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of floating point representations. More...
template<typename genType >
GLM_FUNC_DECL genType | ldexp (genType const &x, int const &exp)
| Builds a floating-point number from x and the corresponding integral exponent of two in exp, returning: significand * exp(2, exponent) More...
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType | max (genType x, genType y)
| Returns y if x < y; otherwise, it returns x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | max (vec< L, T, Q > const &x, T y)
| Returns y if x < y; otherwise, it returns x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | max (vec< L, T, Q > const &x, vec< L, T, Q > const &y)
| Returns y if x < y; otherwise, it returns x. More...
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType | min (genType x, genType y)
| Returns y if y < x; otherwise, it returns x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | min (vec< L, T, Q > const &x, T y)
| Returns y if y < x; otherwise, it returns x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | min (vec< L, T, Q > const &x, vec< L, T, Q > const &y)
| Returns y if y < x; otherwise, it returns x. More...
template<typename genTypeT , typename genTypeU >
GLM_FUNC_DECL GLM_CONSTEXPR genTypeT | mix (genTypeT x, genTypeT y, genTypeU a)
| If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | mod (vec< L, T, Q > const &x, vec< L, T, Q > const &y)
| Modulus. More...
template<typename genType >
GLM_FUNC_DECL genType | modf (genType x, genType &i)
| Returns the fractional part of x and sets i to the integer part (as a whole number floating point value). More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | round (vec< L, T, Q > const &x)
| Returns a value equal to the nearest integer to x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | roundEven (vec< L, T, Q > const &x)
| Returns a value equal to the nearest integer to x. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL GLM_CONSTEXPR vec< L, T, Q > | sign (vec< L, T, Q > const &x)
| Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0. More...
template<typename genType >
GLM_FUNC_DECL genType | smoothstep (genType edge0, genType edge1, genType 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. More...
template<typename genType >
GLM_FUNC_DECL genType | step (genType edge, genType x)
| Returns 0.0 if x < edge, otherwise it returns 1.0 for each component of a genType. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | step (T edge, vec< L, T, Q > const &x)
| Returns 0.0 if x < edge, otherwise it returns 1.0. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | step (vec< L, T, Q > const &edge, vec< L, T, Q > const &x)
| Returns 0.0 if x < edge, otherwise it returns 1.0. More...
template<length_t L, typename T , qualifier Q>
GLM_FUNC_DECL vec< L, T, Q > | trunc (vec< L, T, Q > const &x)
| Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolute value of x. More...
GLM_FUNC_DECL float | uintBitsToFloat (uint v)
| Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value. More...
template<length_t L, qualifier Q>
GLM_FUNC_DECL vec< L, float, Q > | uintBitsToFloat (vec< L, uint, Q > const &v)
| Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value. More...

## Detailed Description

Core features

See also
  GLSL 4.20.8 specification, section 8.3 Common Functions

Definition in file common.hpp.