6 template<
typename genType>
7 GLM_FUNC_QUALIFIER genType
fastPow(genType x, genType y)
12 template<length_t L,
typename T, qualifier Q>
19 GLM_FUNC_QUALIFIER T
fastPow(T x,
int y)
21 T f =
static_cast<T
>(1);
22 for(
int i = 0; i < y; ++i)
27 template<length_t L,
typename T, qualifier Q>
28 GLM_FUNC_QUALIFIER vec<L, T, Q>
fastPow(vec<L, T, Q>
const& x, vec<L, int, Q>
const& y)
31 for(length_t i = 0, n = x.length(); i < n; ++i)
32 Result[i] =
fastPow(x[i], y[i]);
47 return T(1) + x + (x2 * T(0.5)) + (x3 * T(0.1666666667)) + (x4 * T(0.041666667)) + (x5 * T(0.008333333333));
83 template<length_t L,
typename T, qualifier Q>
90 template<
typename genType>
91 GLM_FUNC_QUALIFIER genType
fastLog(genType x)
105 template<length_t L,
typename T, qualifier Q>
112 template<
typename genType>
113 GLM_FUNC_QUALIFIER genType
fastExp2(genType x)
115 return fastExp(0.69314718055994530941723212145818f * x);
118 template<length_t L,
typename T, qualifier Q>
125 template<
typename genType>
126 GLM_FUNC_QUALIFIER genType
fastLog2(genType x)
128 return fastLog(x) / 0.69314718055994530941723212145818f;
131 template<length_t L,
typename T, qualifier Q>
GLM_FUNC_QUALIFIER vec< L, T, Q > log(vec< L, T, Q > const &x)
Definition func_exponential.inl:88
GLM_FUNC_QUALIFIER vec< L, T, Q > exp(vec< L, T, Q > const &x)
Definition func_exponential.inl:80
GLM_FUNC_DECL T fastExp2(T x)
GLM_FUNC_DECL genType fastPow(genType x, genType y)
Definition fast_exponential.inl:7
GLM_FUNC_DECL T fastLog2(T x)
GLM_FUNC_DECL T fastExp(T x)
Definition fast_exponential.inl:39
GLM_FUNC_DECL T fastLog(T x)
Core features
Definition common.hpp:21
Definition _vectorize.hpp:7
Definition qualifier.hpp:35