diff --git a/glm/common.hpp b/glm/common.hpp index fa5a5088..89722845 100644 --- a/glm/common.hpp +++ b/glm/common.hpp @@ -1,11 +1,11 @@ /// @ref core /// @file glm/common.hpp -/// +/// /// @see GLSL 4.20.8 specification, section 8.3 Common Functions /// /// @defgroup core_func_common Common functions /// @ingroup core -/// +/// /// Include to use these core features. /// /// These all operate component-wise. The description is per component. @@ -23,9 +23,9 @@ namespace glm /// @{ /// Returns x if x >= 0; otherwise, it returns -x. - /// + /// /// @tparam genType floating-point or signed integer; scalar or vector types. - /// + /// /// @see GLSL abs man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions /// @see qualifier @@ -37,13 +37,13 @@ namespace glm /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point or signed integer scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL abs man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL vec abs(vec const& x); - /// Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0. + /// Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types @@ -54,7 +54,7 @@ namespace glm template GLM_FUNC_DECL vec sign(vec const& x); - /// Returns a value equal to the nearest integer that is less then or equal to x. + /// Returns a value equal to the nearest integer that is less then or equal to x. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types @@ -119,7 +119,7 @@ namespace glm GLM_FUNC_DECL vec ceil(vec const& x); /// Return x - floor(x). - /// + /// /// @tparam genType Floating-point scalar or vector types. /// /// @see GLSL fract man page @@ -160,7 +160,7 @@ namespace glm /// part (as a whole number floating point value). Both the /// return value and the output parameter will have the same /// sign as x. - /// + /// /// @tparam genType Floating-point scalar or vector types. /// /// @see GLSL modf man page @@ -171,7 +171,7 @@ namespace glm /// Returns y if y < x; otherwise, it returns x. /// /// @tparam genType Floating-point or integer; scalar or vector types. - /// + /// /// @see GLSL min man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -200,37 +200,37 @@ namespace glm GLM_FUNC_DECL vec min(vec const& x, vec const& y); /// Returns y if x < y; otherwise, it returns x. - /// + /// /// @tparam genType Floating-point or integer; scalar or vector types. - /// + /// /// @see GLSL max man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL genType max(genType x, genType y); /// Returns y if x < y; otherwise, it returns x. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point or integer scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL max man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL vec max(vec const& x, T y); /// Returns y if x < y; otherwise, it returns x. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point or integer scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL max man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL vec max(vec const& x, vec const& y); - /// Returns min(max(x, minVal), maxVal) for each component in x + /// Returns min(max(x, minVal), maxVal) for each component in x /// using the floating-point values minVal and maxVal. /// /// @tparam genType Floating-point or integer; scalar or vector types. @@ -240,7 +240,7 @@ namespace glm template GLM_FUNC_DECL genType clamp(genType x, genType minVal, genType maxVal); - /// Returns min(max(x, minVal), maxVal) for each component in x + /// Returns min(max(x, minVal), maxVal) for each component in x /// using the floating-point values minVal and maxVal. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector @@ -252,7 +252,7 @@ namespace glm template GLM_FUNC_DECL vec clamp(vec const& x, T minVal, T maxVal); - /// Returns min(max(x, minVal), maxVal) for each component in x + /// Returns min(max(x, minVal), maxVal) for each component in x /// using the floating-point values minVal and maxVal. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector @@ -268,7 +268,7 @@ namespace glm /// Returns x * (1.0 - a) + y * a, i.e., the linear blend of /// x and y using the floating-point value a. /// The value for a is not restricted to the range [0, 1]. - /// + /// /// If genTypeU is a boolean scalar or vector: /// Selects which vector each returned component comes /// from. For a component of 'a' that is false, the @@ -280,17 +280,17 @@ namespace glm /// provides different functionality than /// genType mix(genType x, genType y, genType(a)) /// where a is a Boolean vector. - /// + /// /// @see GLSL mix man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions - /// + /// /// @param[in] x Value to interpolate. /// @param[in] y Value to interpolate. /// @param[in] a Interpolant. - /// + /// /// @tparam genTypeT Floating point scalar or vector. /// @tparam genTypeU Floating point or boolean scalar or vector. It can't be a vector if it is the length of genTypeT. - /// + /// /// @code /// #include /// ... @@ -301,7 +301,7 @@ namespace glm /// glm::vec4 g; /// glm::vec4 h; /// ... - /// glm::vec4 r = glm::mix(g, h, a); // Interpolate with a floating-point scalar two vectors. + /// glm::vec4 r = glm::mix(g, h, a); // Interpolate with a floating-point scalar two vectors. /// glm::vec4 s = glm::mix(g, h, b); // Returns g or h; /// glm::dvec3 t = glm::mix(e, f, a); // Types of the third parameter is not required to match with the first and the second. /// glm::vec4 u = glm::mix(g, h, r); // Interpolations can be perform per component with a vector for the last parameter. @@ -316,29 +316,29 @@ namespace glm GLM_FUNC_DECL vec mix(vec const& x, vec const& y, U a); /// Returns 0.0 if x < edge, otherwise it returns 1.0 for each component of a genType. - /// + /// /// @see GLSL step man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL genType step(genType edge, genType x); /// Returns 0.0 if x < edge, otherwise it returns 1.0. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL step man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL vec step(T edge, vec const& x); /// Returns 0.0 if x < edge, otherwise it returns 1.0. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL step man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -355,7 +355,7 @@ namespace glm /// Results are undefined if edge0 >= edge1. /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see GLSL smoothstep man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -372,9 +372,9 @@ namespace glm /// floating point representations. Returns false otherwise, /// including for implementations with no NaN /// representations. - /// + /// /// /!\ When using compiler fast math, this function may fail. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum @@ -389,11 +389,11 @@ namespace glm /// set of floating point representations. Returns false /// otherwise, including for implementations with no infinity /// representations. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL isinf man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -402,7 +402,7 @@ namespace glm /// Returns a signed integer value representing /// the encoding of a floating-point value. The floating-point /// value's bit-level representation is preserved. - /// + /// /// @see GLSL floatBitsToInt man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions GLM_FUNC_DECL int floatBitsToInt(float const& v); @@ -410,10 +410,10 @@ namespace glm /// Returns a signed integer value representing /// the encoding of a floating-point value. The floatingpoint /// value's bit-level representation is preserved. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL floatBitsToInt man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -422,7 +422,7 @@ namespace glm /// Returns a unsigned integer value representing /// the encoding of a floating-point value. The floatingpoint /// value's bit-level representation is preserved. - /// + /// /// @see GLSL floatBitsToUint man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions GLM_FUNC_DECL uint floatBitsToUint(float const& v); @@ -444,7 +444,7 @@ namespace glm /// If an inf or NaN is passed in, it will not signal, and the /// resulting floating point value is unspecified. Otherwise, /// the bit-level representation is preserved. - /// + /// /// @see GLSL intBitsToFloat man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions GLM_FUNC_DECL float intBitsToFloat(int const& v); @@ -454,10 +454,10 @@ namespace glm /// If an inf or NaN is passed in, it will not signal, and the /// resulting floating point value is unspecified. Otherwise, /// the bit-level representation is preserved. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL intBitsToFloat man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -468,7 +468,7 @@ namespace glm /// If an inf or NaN is passed in, it will not signal, and the /// resulting floating point value is unspecified. Otherwise, /// the bit-level representation is preserved. - /// + /// /// @see GLSL uintBitsToFloat man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions GLM_FUNC_DECL float uintBitsToFloat(uint const& v); @@ -478,19 +478,19 @@ namespace glm /// If an inf or NaN is passed in, it will not signal, and the /// resulting floating point value is unspecified. Otherwise, /// the bit-level representation is preserved. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL uintBitsToFloat man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL vec uintBitsToFloat(vec const& v); /// Computes and returns a * b + c. - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see GLSL fma man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -499,15 +499,15 @@ namespace glm /// 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. For a /// floating-point value of zero, the significant and exponent /// are both zero. For a floating-point value that is an /// infinity or is not a number, the results are undefined. - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see GLSL frexp man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template @@ -516,13 +516,13 @@ namespace glm /// 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. - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// - /// @see GLSL ldexp man page; + /// + /// @see GLSL ldexp man page; /// @see GLSL 4.20.8 specification, section 8.3 Common Functions template GLM_FUNC_DECL genType ldexp(genType const& x, genIType const& exp); diff --git a/glm/detail/_features.hpp b/glm/detail/_features.hpp index 96deb47e..cee12722 100644 --- a/glm/detail/_features.hpp +++ b/glm/detail/_features.hpp @@ -26,7 +26,7 @@ // Variadic templates - GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2242.pdf -// +// // Extending variadic template template parameters - GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2555.pdf @@ -34,7 +34,7 @@ // Initializer lists - GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2672.htm -// #define GLM_CXX11_STATIC_ASSERT +// #define GLM_CXX11_STATIC_ASSERT // Static assertions - GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1720.html @@ -62,15 +62,15 @@ // Declared type of an expression - GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2343.pdf -// +// // Right angle brackets - GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1757.html -// +// // Default template arguments for function templates DR226 GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#226 -// +// // Solving the SFINAE problem for expressions DR339 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2634.html @@ -78,7 +78,7 @@ // Template aliases N2258 GCC 4.7 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf -// +// // Extern templates N1987 Yes // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1987.htm @@ -90,19 +90,19 @@ // Strongly-typed enums N2347 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2347.pdf -// +// // Forward declarations for enums N2764 GCC 4.6 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2764.pdf -// +// // Generalized attributes N2761 GCC 4.8 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2761.pdf -// +// // Generalized constant expressions N2235 GCC 4.6 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2235.pdf -// +// // Alignment support N2341 GCC 4.8 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2341.pdf @@ -110,7 +110,7 @@ // Delegating constructors N1986 GCC 4.7 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf -// +// // Inheriting constructors N2540 GCC 4.8 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2540.htm @@ -118,19 +118,19 @@ // Explicit conversion operators N2437 GCC 4.5 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf -// +// // New character types N2249 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2249.html -// +// // Unicode string literals N2442 GCC 4.5 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm -// +// // Raw string literals N2442 GCC 4.5 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm -// +// // Universal character name literals N2170 GCC 4.5 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2170.html @@ -138,7 +138,7 @@ // User-defined literals N2765 GCC 4.7 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2765.pdf -// +// // Standard Layout Types N2342 GCC 4.5 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2342.htm @@ -147,11 +147,11 @@ // Defaulted and deleted functions N2346 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2346.htm -// +// // Extended friend declarations N1791 GCC 4.7 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1791.pdf -// +// // Extending sizeof N2253 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2253.html @@ -177,7 +177,7 @@ // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm -// +// // Minimal support for garbage collection and reachability-based leak detection N2670 No // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2670.htm @@ -185,67 +185,67 @@ // Allowing move constructors to throw [noexcept] N3050 GCC 4.6 (core language only) // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3050.html -// +// // Defining move special member functions N3053 GCC 4.6 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3053.html -// +// // Sequence points N2239 Yes // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html -// +// // Atomic operations N2427 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html -// +// // Strong Compare and Exchange N2748 GCC 4.5 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2427.html -// +// // Bidirectional Fences N2752 GCC 4.8 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2752.htm -// +// // Memory model N2429 GCC 4.8 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2429.htm -// +// // Data-dependency ordering: atomics and memory model N2664 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2664.htm -// +// // Propagating exceptions N2179 GCC 4.4 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html -// +// // Abandoning a process and at_quick_exit N2440 GCC 4.8 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2440.htm -// +// // Allow atomics use in signal handlers N2547 Yes // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2547.htm -// +// // Thread-local storage N2659 GCC 4.8 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2659.htm -// +// // Dynamic initialization and destruction with concurrency N2660 GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2660.htm -// +// // __func__ predefined identifier N2340 GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2340.htm -// +// // C99 preprocessor N1653 GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1653.htm -// +// // long long N1811 GCC 4.3 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1811.pdf -// +// // Extended integral types N1988 Yes // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1988.pdf diff --git a/glm/detail/_noise.hpp b/glm/detail/_noise.hpp index 43ac488a..946148ce 100644 --- a/glm/detail/_noise.hpp +++ b/glm/detail/_noise.hpp @@ -28,13 +28,13 @@ namespace detail { return mod289(((x * static_cast(34)) + static_cast(1)) * x); } - + template GLM_FUNC_QUALIFIER vec<3, T, Q> permute(vec<3, T, Q> const& x) { return mod289(((x * static_cast(34)) + static_cast(1)) * x); } - + template GLM_FUNC_QUALIFIER vec<4, T, Q> permute(vec<4, T, Q> const& x) { @@ -46,19 +46,19 @@ namespace detail { return T(1.79284291400159) - T(0.85373472095314) * r; } - + template GLM_FUNC_QUALIFIER vec<2, T, Q> taylorInvSqrt(vec<2, T, Q> const& r) { return T(1.79284291400159) - T(0.85373472095314) * r; } - + template GLM_FUNC_QUALIFIER vec<3, T, Q> taylorInvSqrt(vec<3, T, Q> const& r) { return T(1.79284291400159) - T(0.85373472095314) * r; } - + template GLM_FUNC_QUALIFIER vec<4, T, Q> taylorInvSqrt(vec<4, T, Q> const& r) { @@ -70,13 +70,13 @@ namespace detail { return (t * t * t) * (t * (t * T(6) - T(15)) + T(10)); } - + template GLM_FUNC_QUALIFIER vec<3, T, Q> fade(vec<3, T, Q> const& t) { return (t * t * t) * (t * (t * T(6) - T(15)) + T(10)); } - + template GLM_FUNC_QUALIFIER vec<4, T, Q> fade(vec<4, T, Q> const& t) { diff --git a/glm/detail/_swizzle.hpp b/glm/detail/_swizzle.hpp index 6e501886..2609e797 100644 --- a/glm/detail/_swizzle.hpp +++ b/glm/detail/_swizzle.hpp @@ -16,7 +16,7 @@ namespace detail // Use an opaque buffer to *ensure* the compiler doesn't call a constructor. // The size 1 buffer is assumed to aligned to the actual members so that the - // elem() + // elem() char _buffer[1]; }; @@ -39,7 +39,7 @@ namespace detail template struct _swizzle_base1<4, T, Q, E0,E1,E2,E3, Aligned> : public _swizzle_base0 - { + { GLM_FUNC_QUALIFIER vec<4, T, Q> operator ()() const { return vec<4, T, Q>(this->elem(E0), this->elem(E1), this->elem(E2), this->elem(E3)); } }; @@ -52,7 +52,7 @@ namespace detail E0...3 = what index the n-th element of this swizzle refers to in the unswizzled vec DUPLICATE_ELEMENTS = 1 if there is a repeated element, 0 otherwise (used to specialize swizzles - containing duplicate elements so that they cannot be used as r-values). + containing duplicate elements so that they cannot be used as r-values). */ template struct _swizzle_base2 : public _swizzle_base1::value> @@ -66,8 +66,8 @@ namespace detail GLM_FUNC_QUALIFIER _swizzle_base2& operator= (vec const& that) { - struct op { - GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e = t; } + struct op { + GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e = t; } }; _apply_op(that, op()); return *this; @@ -75,32 +75,32 @@ namespace detail GLM_FUNC_QUALIFIER void operator -= (vec const& that) { - struct op { - GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e -= t; } + struct op { + GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e -= t; } }; _apply_op(that, op()); } GLM_FUNC_QUALIFIER void operator += (vec const& that) { - struct op { - GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e += t; } + struct op { + GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e += t; } }; _apply_op(that, op()); } GLM_FUNC_QUALIFIER void operator *= (vec const& that) { - struct op { - GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e *= t; } + struct op { + GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e *= t; } }; _apply_op(that, op()); } GLM_FUNC_QUALIFIER void operator /= (vec const& that) { - struct op { - GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e /= t; } + struct op { + GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e /= t; } }; _apply_op(that, op()); } @@ -232,7 +232,7 @@ namespace detail GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const V& a, const GLM_SWIZZLE_TYPE1& b) \ { \ return FUNCTION(a, b()); \ - } + } // // Macro for wrapping a function take 2 vec arguments followed by a scalar (e.g. mix()). @@ -257,9 +257,9 @@ namespace detail GLM_FUNC_QUALIFIER typename GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const typename V& a, const GLM_SWIZZLE_TYPE1& b, const T& c) \ { \ return FUNCTION(a, b(), c); \ - } - -}//namespace detail + } + +}//namespace detail }//namespace glm namespace glm @@ -292,7 +292,7 @@ namespace glm //GLM_SWIZZLE_FUNCTION_2_ARGS(value_type, dot); //GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type, cross); - //GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type, step); + //GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type, step); //GLM_SWIZZLE_FUNCTION_2_ARGS_SCALAR(vec_type, mix); } @@ -300,7 +300,7 @@ namespace glm struct { detail::_swizzle<2, T, Q, 0,0,-1,-2> E0 ## E0; }; \ struct { detail::_swizzle<2, T, Q, 0,1,-1,-2> E0 ## E1; }; \ struct { detail::_swizzle<2, T, Q, 1,0,-1,-2> E1 ## E0; }; \ - struct { detail::_swizzle<2, T, Q, 1,1,-1,-2> E1 ## E1; }; + struct { detail::_swizzle<2, T, Q, 1,1,-1,-2> E1 ## E1; }; #define GLM_SWIZZLE2_3_MEMBERS(T, Q, E0,E1) \ struct { detail::_swizzle<3,T, Q, 0,0,0,-1> E0 ## E0 ## E0; }; \ @@ -310,7 +310,7 @@ namespace glm struct { detail::_swizzle<3,T, Q, 1,0,0,-1> E1 ## E0 ## E0; }; \ struct { detail::_swizzle<3,T, Q, 1,0,1,-1> E1 ## E0 ## E1; }; \ struct { detail::_swizzle<3,T, Q, 1,1,0,-1> E1 ## E1 ## E0; }; \ - struct { detail::_swizzle<3,T, Q, 1,1,1,-1> E1 ## E1 ## E1; }; + struct { detail::_swizzle<3,T, Q, 1,1,1,-1> E1 ## E1 ## E1; }; #define GLM_SWIZZLE2_4_MEMBERS(T, Q, E0,E1) \ struct { detail::_swizzle<4,T, Q, 0,0,0,0> E0 ## E0 ## E0 ## E0; }; \ @@ -451,7 +451,7 @@ namespace glm struct { detail::_swizzle<4,T, Q, 2,2,1,2> E2 ## E2 ## E1 ## E2; }; \ struct { detail::_swizzle<4,T, Q, 2,2,2,0> E2 ## E2 ## E2 ## E0; }; \ struct { detail::_swizzle<4,T, Q, 2,2,2,1> E2 ## E2 ## E2 ## E1; }; \ - struct { detail::_swizzle<4,T, Q, 2,2,2,2> E2 ## E2 ## E2 ## E2; }; + struct { detail::_swizzle<4,T, Q, 2,2,2,2> E2 ## E2 ## E2 ## E2; }; #define GLM_SWIZZLE4_2_MEMBERS(T, Q, E0,E1,E2,E3) \ struct { detail::_swizzle<2,T, Q, 0,0,-1,-2> E0 ## E0; }; \ @@ -469,7 +469,7 @@ namespace glm struct { detail::_swizzle<2,T, Q, 3,0,-1,-2> E3 ## E0; }; \ struct { detail::_swizzle<2,T, Q, 3,1,-1,-2> E3 ## E1; }; \ struct { detail::_swizzle<2,T, Q, 3,2,-1,-2> E3 ## E2; }; \ - struct { detail::_swizzle<2,T, Q, 3,3,-1,-2> E3 ## E3; }; + struct { detail::_swizzle<2,T, Q, 3,3,-1,-2> E3 ## E3; }; #define GLM_SWIZZLE4_3_MEMBERS(T, Q, E0,E1,E2,E3) \ struct { detail::_swizzle<3, T, Q, 0,0,0,-1> E0 ## E0 ## E0; }; \ @@ -535,7 +535,7 @@ namespace glm struct { detail::_swizzle<3, T, Q, 3,3,0,-1> E3 ## E3 ## E0; }; \ struct { detail::_swizzle<3, T, Q, 3,3,1,-1> E3 ## E3 ## E1; }; \ struct { detail::_swizzle<3, T, Q, 3,3,2,-1> E3 ## E3 ## E2; }; \ - struct { detail::_swizzle<3, T, Q, 3,3,3,-1> E3 ## E3 ## E3; }; + struct { detail::_swizzle<3, T, Q, 3,3,3,-1> E3 ## E3 ## E3; }; #define GLM_SWIZZLE4_4_MEMBERS(T, Q, E0,E1,E2,E3) \ struct { detail::_swizzle<4, T, Q, 0,0,0,0> E0 ## E0 ## E0 ## E0; }; \ diff --git a/glm/detail/dummy.cpp b/glm/detail/dummy.cpp index 6ab8f036..01e4ba8e 100644 --- a/glm/detail/dummy.cpp +++ b/glm/detail/dummy.cpp @@ -1,7 +1,7 @@ /// @ref core /// @file glm/core/dummy.cpp /// -/// GLM is a header only library. There is nothing to compile. +/// GLM is a header only library. There is nothing to compile. /// dummy.cpp exist only a wordaround for CMake file. /* diff --git a/glm/detail/func_common.inl b/glm/detail/func_common.inl index 37d62125..539c3491 100644 --- a/glm/detail/func_common.inl +++ b/glm/detail/func_common.inl @@ -319,13 +319,13 @@ namespace detail // sign // fast and works for any type - template + template GLM_FUNC_QUALIFIER genFIType sign(genFIType x) { GLM_STATIC_ASSERT( std::numeric_limits::is_iec559 || (std::numeric_limits::is_signed && std::numeric_limits::is_integer), "'sign' only accept signed inputs"); - + return detail::compute_sign<1, genFIType, defaultp, std::numeric_limits::is_iec559, highp>::call(vec<1, genFIType>(x)).x; } @@ -378,7 +378,7 @@ namespace detail GLM_FUNC_QUALIFIER genType roundEven(genType x) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559, "'roundEven' only accept floating-point inputs"); - + int Integer = static_cast(x); genType IntegerPart = static_cast(Integer); genType FractionalPart = fract(x); @@ -391,7 +391,7 @@ namespace detail { return IntegerPart; } - else if(x <= static_cast(0)) // Work around... + else if(x <= static_cast(0)) // Work around... { return IntegerPart - static_cast(1); } @@ -622,7 +622,7 @@ namespace detail # if GLM_HAS_CXX11_STL using std::isnan; # else - template + template GLM_FUNC_QUALIFIER bool isnan(genType x) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559, "'isnan' only accept floating-point inputs"); @@ -661,7 +661,7 @@ namespace detail # if GLM_HAS_CXX11_STL using std::isinf; # else - template + template GLM_FUNC_QUALIFIER bool isinf(genType x) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559, "'isinf' only accept floating-point inputs"); @@ -775,7 +775,7 @@ namespace detail { return reinterpret_cast&>(const_cast&>(v)); } - + template GLM_FUNC_QUALIFIER genType fma(genType const& a, genType const& b, genType const& c) { diff --git a/glm/detail/func_exponential.inl b/glm/detail/func_exponential.inl index 907989f4..b9626748 100644 --- a/glm/detail/func_exponential.inl +++ b/glm/detail/func_exponential.inl @@ -48,7 +48,7 @@ namespace detail return static_cast(1) / sqrt(x); } }; - + template struct compute_inversesqrt { @@ -137,7 +137,7 @@ namespace detail { return static_cast(1) / sqrt(x); } - + template GLM_FUNC_QUALIFIER vec inversesqrt(vec const& x) { diff --git a/glm/detail/func_integer_simd.inl b/glm/detail/func_integer_simd.inl index b1024f72..690671a3 100644 --- a/glm/detail/func_integer_simd.inl +++ b/glm/detail/func_integer_simd.inl @@ -22,9 +22,9 @@ namespace detail __m128i const set2 = _mm_andnot_si128(set0, _mm_set1_epi32(-1)); __m128i const and2 = _mm_and_si128(set0, set2); __m128i const sft2 = _mm_srai_epi32(and2, Shift); - + __m128i const or0 = _mm_or_si128(sft1, sft2); - + return or0; } }; @@ -41,7 +41,7 @@ namespace detail __m128i const sft0 = _mm_slli_epi32(set0, Shift); __m128i const and1 = _mm_and_si128(sft0, set1); __m128i const add0 = _mm_add_epi32(and0, and1); - + return add0; } }; diff --git a/glm/detail/func_packing.inl b/glm/detail/func_packing.inl index ae97adb1..7c22eb9e 100644 --- a/glm/detail/func_packing.inl +++ b/glm/detail/func_packing.inl @@ -95,7 +95,7 @@ namespace glm return vec4(u.out[0], u.out[1], u.out[2], u.out[3]) * 0.0039215686274509803921568627451f; } - + GLM_FUNC_QUALIFIER uint packSnorm4x8(vec4 const& v) { union @@ -113,7 +113,7 @@ namespace glm return u.out; } - + GLM_FUNC_QUALIFIER glm::vec4 unpackSnorm4x8(uint p) { union diff --git a/glm/detail/func_trigonometric.inl b/glm/detail/func_trigonometric.inl index 00599740..291fccd4 100644 --- a/glm/detail/func_trigonometric.inl +++ b/glm/detail/func_trigonometric.inl @@ -21,7 +21,7 @@ namespace glm { return detail::functor1::call(radians, v); } - + // degrees template GLM_FUNC_QUALIFIER GLM_CONSTEXPR genType degrees(genType radians) @@ -155,7 +155,7 @@ namespace glm # if GLM_HAS_CXX11_STL using std::acosh; # else - template + template GLM_FUNC_QUALIFIER genType acosh(genType x) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559, "'acosh' only accept floating-point input"); @@ -180,7 +180,7 @@ namespace glm GLM_FUNC_QUALIFIER genType atanh(genType x) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559, "'atanh' only accept floating-point input"); - + if(std::abs(x) >= static_cast(1)) return 0; return static_cast(0.5) * log((static_cast(1) + x) / (static_cast(1) - x)); diff --git a/glm/detail/setup.hpp b/glm/detail/setup.hpp index 8969678c..81684419 100644 --- a/glm/detail/setup.hpp +++ b/glm/detail/setup.hpp @@ -806,7 +806,7 @@ namespace glm /////////////////////////////////////////////////////////////////////////////////// // Check inclusions of different versions of GLM -#elif ((GLM_SETUP_INCLUDED != GLM_VERSION) && !defined(GLM_FORCE_IGNORE_VERSION)) +#elif ((GLM_SETUP_INCLUDED != GLM_VERSION) && !defined(GLM_FORCE_IGNORE_VERSION)) # error "GLM error: A different version of GLM is already included. Define GLM_FORCE_IGNORE_VERSION before including GLM headers to ignore this error." #elif GLM_SETUP_INCLUDED == GLM_VERSION diff --git a/glm/detail/type_float.hpp b/glm/detail/type_float.hpp index 57e5b36e..28abb5f8 100644 --- a/glm/detail/type_float.hpp +++ b/glm/detail/type_float.hpp @@ -14,7 +14,7 @@ namespace detail typedef double float64; # endif//GLM_FORCE_SINGLE_ONLY }//namespace detail - + typedef float lowp_float_t; typedef float mediump_float_t; typedef double highp_float_t; @@ -22,23 +22,23 @@ namespace detail /// @addtogroup core_precision /// @{ - /// Low qualifier floating-point numbers. + /// Low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.4 Floats /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef lowp_float_t lowp_float; /// Medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.4 Floats /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mediump_float_t mediump_float; /// High qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.4 Floats /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef highp_float_t highp_float; diff --git a/glm/detail/type_gentype.hpp b/glm/detail/type_gentype.hpp index a0730aad..b45cdf47 100644 --- a/glm/detail/type_gentype.hpp +++ b/glm/detail/type_gentype.hpp @@ -13,12 +13,12 @@ namespace glm }; typedef std::size_t sizeType; - + namespace detail { template < - typename VALTYPE, + typename VALTYPE, template class TYPE > struct genType @@ -35,7 +35,7 @@ namespace detail typedef sizeType size_type; static bool is_vector(); static bool is_matrix(); - + typedef TYPE type; typedef TYPE * pointer; typedef TYPE const * const_pointer; @@ -64,7 +64,7 @@ namespace detail template < - typename VALTYPE, + typename VALTYPE, template class TYPE > bool genType::is_vector() @@ -97,8 +97,8 @@ namespace detail static bool is_matrix(); private: - // Data - col_type value[colT]; + // Data + col_type value[colT]; public: ////////////////////////////////////// @@ -135,7 +135,7 @@ namespace detail class_type& operator-- (); }; */ - + //template //struct traits //{ @@ -147,28 +147,28 @@ namespace detail // static const bool is_genIType = false; // static const bool is_genUType = false; //}; - + //template<> //struct traits //{ // static const bool is_float = true; // static const bool is_genType = true; //}; - + //template<> //struct traits //{ // static const bool is_float = true; // static const bool is_genType = true; //}; - + //template<> //struct traits //{ // static const bool is_float = true; // static const bool is_genType = true; //}; - + //template //struct desc //{ @@ -180,15 +180,15 @@ namespace detail // typedef genType & reference; // typedef genType const& const_reference; // typedef genType const& param_type; - + // typedef typename genType::value_type value_type; // typedef typename genType::size_type size_type; // static const typename size_type value_size; //}; - + //template //const typename desc::size_type desc::value_size = genType::value_size(); - + }//namespace detail }//namespace glm diff --git a/glm/detail/type_gentype.inl b/glm/detail/type_gentype.inl index 8b76249f..60ffa9a9 100644 --- a/glm/detail/type_gentype.inl +++ b/glm/detail/type_gentype.inl @@ -174,7 +174,7 @@ typename base::col_type const& base::operator[] // Unary updatable operators template -typename base::class_type& base::operator= +typename base::class_type& base::operator= ( typename base::class_type const& x ) @@ -184,7 +184,7 @@ typename base::class_type& base::operator= } template -typename base::class_type& base::operator+= +typename base::class_type& base::operator+= ( typename base::T const& x ) @@ -200,7 +200,7 @@ typename base::class_type& base::operator+= } template -typename base::class_type& base::operator+= +typename base::class_type& base::operator+= ( typename base::class_type const& x ) @@ -216,7 +216,7 @@ typename base::class_type& base::operator+= } template -typename base::class_type& base::operator-= +typename base::class_type& base::operator-= ( typename base::T const& x ) @@ -232,7 +232,7 @@ typename base::class_type& base::operator-= } template -typename base::class_type& base::operator-= +typename base::class_type& base::operator-= ( typename base::class_type const& x ) @@ -248,7 +248,7 @@ typename base::class_type& base::operator-= } template -typename base::class_type& base::operator*= +typename base::class_type& base::operator*= ( typename base::T const& x ) @@ -264,7 +264,7 @@ typename base::class_type& base::operator*= } template -typename base::class_type& base::operator*= +typename base::class_type& base::operator*= ( typename base::class_type const& x ) @@ -280,7 +280,7 @@ typename base::class_type& base::operator*= } template -typename base::class_type& base::operator/= +typename base::class_type& base::operator/= ( typename base::T const& x ) @@ -296,7 +296,7 @@ typename base::class_type& base::operator/= } template -typename base::class_type& base::operator/= +typename base::class_type& base::operator/= ( typename base::class_type const& x ) diff --git a/glm/detail/type_half.inl b/glm/detail/type_half.inl index fa049f7e..29e8160b 100644 --- a/glm/detail/type_half.inl +++ b/glm/detail/type_half.inl @@ -8,7 +8,7 @@ namespace detail { volatile float f = 1e10; - for(int i = 0; i < 10; ++i) + for(int i = 0; i < 10; ++i) f *= f; // this will overflow before the for loop terminates return f; } @@ -149,7 +149,7 @@ namespace detail // whose magnitude is less than __half_NRM_MIN. // // We convert f to a denormalized half. - // + // m = (m | 0x00800000) >> (1 - e); @@ -160,9 +160,9 @@ namespace detail // our number normalized. Because of the way a half's bits // are laid out, we don't have to treat this case separately; // the code below will handle it correctly. - // + // - if(m & 0x00001000) + if(m & 0x00001000) m += 0x00002000; // @@ -188,7 +188,7 @@ namespace detail // F is a NAN; we produce a half NAN that preserves // the sign bit and the 10 leftmost bits of the // significand of f, with one exception: If the 10 - // leftmost bits are all zero, the NAN would turn + // leftmost bits are all zero, the NAN would turn // into an infinity, so we have to set at least one // bit in the significand. // diff --git a/glm/detail/type_int.hpp b/glm/detail/type_int.hpp index 9e1471d5..c8b1d150 100644 --- a/glm/detail/type_int.hpp +++ b/glm/detail/type_int.hpp @@ -20,7 +20,7 @@ namespace detail typedef std::int16_t int16; typedef std::int32_t int32; typedef std::int64_t int64; - + typedef std::uint8_t uint8; typedef std::uint16_t uint16; typedef std::uint32_t uint32; @@ -29,41 +29,41 @@ namespace detail # if(defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)) // C99 detected, 64 bit types available typedef int64_t sint64; typedef uint64_t uint64; - + # elif GLM_COMPILER & GLM_COMPILER_VC typedef signed __int64 sint64; typedef unsigned __int64 uint64; - + # elif GLM_COMPILER & GLM_COMPILER_GCC # pragma GCC diagnostic ignored "-Wlong-long" __extension__ typedef signed long long sint64; __extension__ typedef unsigned long long uint64; - + # elif (GLM_COMPILER & GLM_COMPILER_CLANG) # pragma clang diagnostic ignored "-Wc++11-long-long" typedef signed long long sint64; typedef unsigned long long uint64; - + # else//unknown compiler typedef signed long long sint64; typedef unsigned long long uint64; # endif//GLM_COMPILER - + typedef signed char int8; typedef signed short int16; typedef signed int int32; typedef sint64 int64; - + typedef unsigned char uint8; typedef unsigned short uint16; typedef unsigned int uint32; typedef uint64 uint64; #endif// - + typedef signed int lowp_int_t; typedef signed int mediump_int_t; typedef signed int highp_int_t; - + typedef unsigned int lowp_uint_t; typedef unsigned int mediump_uint_t; typedef unsigned int highp_uint_t; @@ -100,7 +100,7 @@ namespace detail { typedef long type; }; - + template<> struct make_signed { @@ -182,19 +182,19 @@ namespace detail { typedef long long type; }; - + template<> struct make_signed { typedef long long type; }; - + template<> struct make_unsigned { typedef unsigned long long type; }; - + template<> struct make_unsigned { @@ -207,7 +207,7 @@ namespace detail typedef detail::int16 int16; typedef detail::int32 int32; typedef detail::int64 int64; - + typedef detail::uint8 uint8; typedef detail::uint16 uint16; typedef detail::uint32 uint32; @@ -216,44 +216,44 @@ namespace detail /// @addtogroup core_precision /// @{ - /// Low qualifier signed integer. + /// Low qualifier signed integer. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.3 Integers /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef detail::lowp_int_t lowp_int; - /// Medium qualifier signed integer. + /// Medium qualifier signed integer. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.3 Integers /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef detail::mediump_int_t mediump_int; /// High qualifier signed integer. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.3 Integers /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef detail::highp_int_t highp_int; - /// Low qualifier unsigned integer. + /// Low qualifier unsigned integer. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.3 Integers /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef detail::lowp_uint_t lowp_uint; - /// Medium qualifier unsigned integer. + /// Medium qualifier unsigned integer. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.3 Integers /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef detail::mediump_uint_t mediump_uint; - /// High qualifier unsigned integer. + /// High qualifier unsigned integer. /// There is no guarantee on the actual qualifier. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.3 Integers /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef detail::highp_uint_t highp_uint; @@ -283,7 +283,7 @@ namespace detail #endif /// Unsigned integer type. - /// + /// /// @see GLSL 4.20.8 specification, section 4.1.3 Integers typedef unsigned int uint; diff --git a/glm/detail/type_mat.hpp b/glm/detail/type_mat.hpp index 53479eeb..db839b3b 100644 --- a/glm/detail/type_mat.hpp +++ b/glm/detail/type_mat.hpp @@ -29,308 +29,308 @@ namespace detail /// @addtogroup core_precision /// @{ - + /// 2 columns of 2 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, lowp> lowp_mat2; - + /// 2 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, mediump> mediump_mat2; - + /// 2 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, highp> highp_mat2; - + /// 2 columns of 2 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, lowp> lowp_mat2x2; - + /// 2 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, mediump> mediump_mat2x2; - + /// 2 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, highp> highp_mat2x2; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 2 columns of 3 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 3, float, lowp> lowp_mat2x3; - + /// 2 columns of 3 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 3, float, mediump> mediump_mat2x3; - + /// 2 columns of 3 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 3, float, highp> highp_mat2x3; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 2 columns of 4 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, float, lowp> lowp_mat2x4; - + /// 2 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, float, mediump> mediump_mat2x4; - + /// 2 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, float, highp> highp_mat2x4; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 3 columns of 2 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, float, lowp> lowp_mat3x2; - + /// 3 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, float, mediump> mediump_mat3x2; - + /// 3 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, float, highp> highp_mat3x2; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 3 columns of 3 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, lowp> lowp_mat3; - + /// 3 columns of 3 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, mediump> mediump_mat3; - + /// 3 columns of 3 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, highp> highp_mat3; - + /// 3 columns of 3 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, lowp> lowp_mat3x3; - + /// 3 columns of 3 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, mediump> mediump_mat3x3; - + /// 3 columns of 3 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, highp> highp_mat3x3; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 3 columns of 4 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, float, lowp> lowp_mat3x4; - + /// 3 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, float, mediump> mediump_mat3x4; - + /// 3 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, float, highp> highp_mat3x4; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 4 columns of 2 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, float, lowp> lowp_mat4x2; - + /// 4 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, float, mediump> mediump_mat4x2; - + /// 4 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, float, highp> highp_mat4x2; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 4 columns of 3 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, float, lowp> lowp_mat4x3; - + /// 4 columns of 3 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, float, mediump> mediump_mat4x3; - + /// 4 columns of 3 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, float, highp> highp_mat4x3; - + /// @} - - + + /// @addtogroup core_precision /// @{ - + /// 4 columns of 4 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, lowp> lowp_mat4; - + /// 4 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, mediump> mediump_mat4; - + /// 4 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, highp> highp_mat4; - + /// 4 columns of 4 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, lowp> lowp_mat4x4; - + /// 4 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, mediump> mediump_mat4x4; - + /// 4 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, highp> highp_mat4x4; - + /// @} - + /// @addtogroup core_types /// @{ - + ////////////////////////// // Float definition - + #if(defined(GLM_PRECISION_LOWP_FLOAT)) typedef lowp_mat2x2 mat2x2; typedef lowp_mat2x3 mat2x3; @@ -351,333 +351,333 @@ namespace detail typedef mediump_mat4x2 mat4x2; typedef mediump_mat4x3 mat4x3; typedef mediump_mat4x4 mat4x4; -#else +#else //! 2 columns of 2 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat2x2 mat2x2; - + //! 2 columns of 3 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat2x3 mat2x3; - + //! 2 columns of 4 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat2x4 mat2x4; - + //! 3 columns of 2 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat3x2 mat3x2; - + //! 3 columns of 3 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat3x3 mat3x3; - + //! 3 columns of 4 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat3x4 mat3x4; - + //! 4 columns of 2 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat4x2 mat4x2; - + //! 4 columns of 3 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat4x3 mat4x3; - + //! 4 columns of 4 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_mat4x4 mat4x4; - + #endif//GLM_PRECISION - + //! 2 columns of 2 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef mat2x2 mat2; - + //! 3 columns of 3 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef mat3x3 mat3; - + //! 4 columns of 4 components matrix of floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef mat4x4 mat4; - + ////////////////////////// // Double definition - + /// @addtogroup core_precision /// @{ - + /// 2 columns of 2 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, double, lowp> lowp_dmat2; - + /// 2 columns of 2 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, double, mediump> mediump_dmat2; - + /// 2 columns of 2 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, double, highp> highp_dmat2; - + /// 2 columns of 2 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, double, lowp> lowp_dmat2x2; - + /// 2 columns of 2 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, double, mediump> mediump_dmat2x2; - + /// 2 columns of 2 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, double, highp> highp_dmat2x2; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 2 columns of 3 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 3, double, lowp> lowp_dmat2x3; - + /// 2 columns of 3 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 3, double, mediump> mediump_dmat2x3; - + /// 2 columns of 3 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 3, double, highp> highp_dmat2x3; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 2 columns of 4 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, double, lowp> lowp_dmat2x4; - + /// 2 columns of 4 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, double, mediump> mediump_dmat2x4; - + /// 2 columns of 4 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, double, highp> highp_dmat2x4; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 3 columns of 2 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, double, lowp> lowp_dmat3x2; - + /// 3 columns of 2 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, double, mediump> mediump_dmat3x2; - + /// 3 columns of 2 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, double, highp> highp_dmat3x2; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 3 columns of 3 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, lowp> lowp_dmat3; - + /// 3 columns of 3 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, double, mediump> mediump_dmat3; - + /// 3 columns of 3 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, double, highp> highp_dmat3; - + /// 3 columns of 3 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, double, lowp> lowp_dmat3x3; - + /// 3 columns of 3 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, double, mediump> mediump_dmat3x3; - + /// 3 columns of 3 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, double, highp> highp_dmat3x3; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 3 columns of 4 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, double, lowp> lowp_dmat3x4; - + /// 3 columns of 4 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, double, mediump> mediump_dmat3x4; - + /// 3 columns of 4 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, double, highp> highp_dmat3x4; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 4 columns of 2 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, double, lowp> lowp_dmat4x2; - + /// 4 columns of 2 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, double, mediump> mediump_dmat4x2; - + /// 4 columns of 2 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, double, highp> highp_dmat4x2; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 4 columns of 3 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, double, lowp> lowp_dmat4x3; - + /// 4 columns of 3 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, double, mediump> mediump_dmat4x3; - + /// 4 columns of 3 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, double, highp> highp_dmat4x3; - + /// @} - + /// @addtogroup core_precision /// @{ - + /// 4 columns of 4 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, double, lowp> lowp_dmat4; - + /// 4 columns of 4 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, double, mediump> mediump_dmat4; - + /// 4 columns of 4 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, double, highp> highp_dmat4; - + /// 4 columns of 4 components matrix of low qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, double, lowp> lowp_dmat4x4; - + /// 4 columns of 4 components matrix of medium qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, double, mediump> mediump_dmat4x4; - + /// 4 columns of 4 components matrix of high qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, double, highp> highp_dmat4x4; - + /// @} - + #if(defined(GLM_PRECISION_LOWP_DOUBLE)) typedef lowp_dmat2x2 dmat2x2; typedef lowp_dmat2x3 dmat2x3; @@ -699,68 +699,68 @@ namespace detail typedef mediump_dmat4x3 dmat4x3; typedef mediump_dmat4x4 dmat4x4; #else //defined(GLM_PRECISION_HIGHP_DOUBLE) - + //! 2 * 2 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat2x2 dmat2; - + //! 3 * 3 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat3x3 dmat3; - + //! 4 * 4 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat4x4 dmat4; - + //! 2 * 2 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat2x2 dmat2x2; - + //! 2 * 3 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat2x3 dmat2x3; - + //! 2 * 4 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat2x4 dmat2x4; - + //! 3 * 2 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat3x2 dmat3x2; - + /// 3 * 3 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat3x3 dmat3x3; - + /// 3 * 4 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat3x4 dmat3x4; - + /// 4 * 2 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat4x2 dmat4x2; - + /// 4 * 3 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat4x3 dmat4x3; - + /// 4 * 4 matrix of double-qualifier floating-point numbers. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices typedef highp_dmat4x4 dmat4x4; #endif//GLM_PRECISION - + /// @} }//namespace glm diff --git a/glm/detail/type_mat2x2.inl b/glm/detail/type_mat2x2.inl index 011344bf..b0080567 100644 --- a/glm/detail/type_mat2x2.inl +++ b/glm/detail/type_mat2x2.inl @@ -38,7 +38,7 @@ namespace glm } template - GLM_FUNC_QUALIFIER mat<2, 2, T, Q>::mat + GLM_FUNC_QUALIFIER mat<2, 2, T, Q>::mat ( T const& x0, T const& y0, T const& x1, T const& y1 @@ -59,7 +59,7 @@ namespace glm template template - GLM_FUNC_QUALIFIER mat<2, 2, T, Q>::mat + GLM_FUNC_QUALIFIER mat<2, 2, T, Q>::mat ( X1 const& x1, Y1 const& y1, X2 const& x2, Y2 const& y2 @@ -68,7 +68,7 @@ namespace glm this->value[0] = col_type(static_cast(x1), value_type(y1)); this->value[1] = col_type(static_cast(x2), value_type(y2)); } - + template template GLM_FUNC_QUALIFIER mat<2, 2, T, Q>::mat(vec<2, V1, Q> const& v1, vec<2, V2, Q> const& v2) @@ -101,7 +101,7 @@ namespace glm this->value[1] = col_type(m[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 2, T, Q>::mat(mat<2, 3, T, Q> const& m) { this->value[0] = col_type(m[0]); @@ -294,7 +294,7 @@ namespace glm GLM_FUNC_QUALIFIER mat<2, 2, T, Q> operator-(mat<2, 2, T, Q> const& m) { return mat<2, 2, T, Q>( - -m[0], + -m[0], -m[1]); } @@ -424,7 +424,7 @@ namespace glm m1[0][1] * m2[3][0] + m1[1][1] * m2[3][1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 2, T, Q> operator/(mat<2, 2, T, Q> const& m, T scalar) { return mat<2, 2, T, Q>( @@ -432,7 +432,7 @@ namespace glm m[1] / scalar); } - template + template GLM_FUNC_QUALIFIER mat<2, 2, T, Q> operator/(T scalar, mat<2, 2, T, Q> const& m) { return mat<2, 2, T, Q>( @@ -454,7 +454,7 @@ namespace glm template GLM_FUNC_QUALIFIER mat<2, 2, T, Q> operator/(mat<2, 2, T, Q> const& m1, mat<2, 2, T, Q> const& m2) - { + { mat<2, 2, T, Q> m1_copy(m1); return m1_copy /= m2; } diff --git a/glm/detail/type_mat2x3.inl b/glm/detail/type_mat2x3.inl index 9944654c..0a13f9dc 100644 --- a/glm/detail/type_mat2x3.inl +++ b/glm/detail/type_mat2x3.inl @@ -28,15 +28,15 @@ namespace glm this->value[1] = m.value[1]; } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(T scalar) { this->value[0] = col_type(scalar, 0, 0); this->value[1] = col_type(0, scalar, 0); } - template - GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat + template + GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat ( T x0, T y0, T z0, T x1, T y1, T z1 @@ -46,7 +46,7 @@ namespace glm this->value[1] = col_type(x1, y1, z1); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(col_type const& v0, col_type const& v1) { this->value[0] = v0; @@ -59,7 +59,7 @@ namespace glm template< typename X1, typename Y1, typename Z1, typename X2, typename Y2, typename Z2> - GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat + GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat ( X1 x1, Y1 y1, Z1 z1, X2 x2, Y2 y2, Z2 z2 @@ -68,7 +68,7 @@ namespace glm this->value[0] = col_type(static_cast(x1), value_type(y1), value_type(z1)); this->value[1] = col_type(static_cast(x2), value_type(y2), value_type(z2)); } - + template template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(vec<3, V1, Q> const& v1, vec<3, V2, Q> const& v2) @@ -87,56 +87,56 @@ namespace glm this->value[1] = col_type(m[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<2, 2, T, Q> const& m) { this->value[0] = col_type(m[0], 0); this->value[1] = col_type(m[1], 0); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<3, 3, T, Q> const& m) { this->value[0] = col_type(m[0]); this->value[1] = col_type(m[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<4, 4, T, Q> const& m) { this->value[0] = col_type(m[0]); this->value[1] = col_type(m[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<2, 4, T, Q> const& m) { this->value[0] = col_type(m[0]); this->value[1] = col_type(m[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<3, 2, T, Q> const& m) { this->value[0] = col_type(m[0], 0); this->value[1] = col_type(m[1], 0); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<3, 4, T, Q> const& m) { this->value[0] = col_type(m[0]); this->value[1] = col_type(m[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<4, 2, T, Q> const& m) { this->value[0] = col_type(m[0], 0); this->value[1] = col_type(m[1], 0); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q>::mat(mat<4, 3, T, Q> const& m) { this->value[0] = m[0]; @@ -286,7 +286,7 @@ namespace glm // -- Binary arithmetic operators -- - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q> operator+(mat<2, 3, T, Q> const& m, T scalar) { return mat<2, 3, T, Q>( @@ -294,7 +294,7 @@ namespace glm m[1] + scalar); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q> operator+(mat<2, 3, T, Q> const& m1, mat<2, 3, T, Q> const& m2) { return mat<2, 3, T, Q>( @@ -302,7 +302,7 @@ namespace glm m1[1] + m2[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q> operator-(mat<2, 3, T, Q> const& m, T scalar) { return mat<2, 3, T, Q>( @@ -310,7 +310,7 @@ namespace glm m[1] - scalar); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q> operator-(mat<2, 3, T, Q> const& m1, mat<2, 3, T, Q> const& m2) { return mat<2, 3, T, Q>( @@ -318,7 +318,7 @@ namespace glm m1[1] - m2[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 3, T, Q> operator*(mat<2, 3, T, Q> const& m, T scalar) { return mat<2, 3, T, Q>( diff --git a/glm/detail/type_mat2x4.inl b/glm/detail/type_mat2x4.inl index 62fc5b1a..52d8ea96 100644 --- a/glm/detail/type_mat2x4.inl +++ b/glm/detail/type_mat2x4.inl @@ -69,7 +69,7 @@ namespace glm this->value[0] = col_type(static_cast(x1), value_type(y1), value_type(z1), value_type(w1)); this->value[1] = col_type(static_cast(x2), value_type(y2), value_type(z2), value_type(w2)); } - + template template GLM_FUNC_QUALIFIER mat<2, 4, T, Q>::mat(vec<4, V1, Q> const& v1, vec<4, V2, Q> const& v2) @@ -281,7 +281,7 @@ namespace glm GLM_FUNC_QUALIFIER mat<2, 4, T, Q> operator-(mat<2, 4, T, Q> const& m) { return mat<2, 4, T, Q>( - -m[0], + -m[0], -m[1]); } @@ -295,7 +295,7 @@ namespace glm m[1] + scalar); } - template + template GLM_FUNC_QUALIFIER mat<2, 4, T, Q> operator+(mat<2, 4, T, Q> const& m1, mat<2, 4, T, Q> const& m2) { return mat<2, 4, T, Q>( @@ -303,7 +303,7 @@ namespace glm m1[1] + m2[1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 4, T, Q> operator-(mat<2, 4, T, Q> const& m, T scalar) { return mat<2, 4, T, Q>( @@ -327,7 +327,7 @@ namespace glm m[1] * scalar); } - template + template GLM_FUNC_QUALIFIER mat<2, 4, T, Q> operator*(T scalar, mat<2, 4, T, Q> const& m) { return mat<2, 4, T, Q>( @@ -426,7 +426,7 @@ namespace glm m1[0][3] * m2[2][0] + m1[1][3] * m2[2][1]); } - template + template GLM_FUNC_QUALIFIER mat<2, 4, T, Q> operator/(mat<2, 4, T, Q> const& m, T scalar) { return mat<2, 4, T, Q>( diff --git a/glm/detail/type_mat3x2.inl b/glm/detail/type_mat3x2.inl index 5a64edbb..53bae25f 100644 --- a/glm/detail/type_mat3x2.inl +++ b/glm/detail/type_mat3x2.inl @@ -6,7 +6,7 @@ namespace glm // -- Constructors -- # if !GLM_HAS_DEFAULTED_FUNCTIONS - template + template GLM_FUNC_QUALIFIER mat<3, 2, T, Q>::mat() {} # endif @@ -315,7 +315,7 @@ namespace glm return m; } - template + template GLM_FUNC_QUALIFIER mat<3, 2, T, Q> operator-(mat<3, 2, T, Q> const& m) { return mat<3, 2, T, Q>( @@ -353,7 +353,7 @@ namespace glm m[2] - scalar); } - template + template GLM_FUNC_QUALIFIER mat<3, 2, T, Q> operator-(mat<3, 2, T, Q> const& m1, mat<3, 2, T, Q> const& m2) { return mat<3, 2, T, Q>( @@ -362,7 +362,7 @@ namespace glm m1[2] - m2[2]); } - template + template GLM_FUNC_QUALIFIER mat<3, 2, T, Q> operator*(mat<3, 2, T, Q> const& m, T scalar) { return mat<3, 2, T, Q>( @@ -371,7 +371,7 @@ namespace glm m[2] * scalar); } - template + template GLM_FUNC_QUALIFIER mat<3, 2, T, Q> operator*(T scalar, mat<3, 2, T, Q> const& m) { return mat<3, 2, T, Q>( @@ -379,7 +379,7 @@ namespace glm m[1] * scalar, m[2] * scalar); } - + template GLM_FUNC_QUALIFIER typename mat<3, 2, T, Q>::col_type operator*(mat<3, 2, T, Q> const& m, typename mat<3, 2, T, Q>::row_type const& v) { @@ -457,7 +457,7 @@ namespace glm m[2] / scalar); } - template + template GLM_FUNC_QUALIFIER mat<3, 2, T, Q> operator/(T scalar, mat<3, 2, T, Q> const& m) { return mat<3, 2, T, Q>( @@ -474,7 +474,7 @@ namespace glm return (m1[0] == m2[0]) && (m1[1] == m2[1]) && (m1[2] == m2[2]); } - template + template GLM_FUNC_QUALIFIER bool operator!=(mat<3, 2, T, Q> const& m1, mat<3, 2, T, Q> const& m2) { return (m1[0] != m2[0]) || (m1[1] != m2[1]) || (m1[2] != m2[2]); diff --git a/glm/detail/type_mat3x3.inl b/glm/detail/type_mat3x3.inl index 8be4cf4a..6cc75eb4 100644 --- a/glm/detail/type_mat3x3.inl +++ b/glm/detail/type_mat3x3.inl @@ -84,7 +84,7 @@ namespace glm this->value[1] = col_type(static_cast(x2), value_type(y2), value_type(z2)); this->value[2] = col_type(static_cast(x3), value_type(y3), value_type(z3)); } - + template template GLM_FUNC_QUALIFIER mat<3, 3, T, Q>::mat @@ -335,14 +335,14 @@ namespace glm GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator-(mat<3, 3, T, Q> const& m) { return mat<3, 3, T, Q>( - -m[0], + -m[0], -m[1], -m[2]); } // -- Binary arithmetic operators -- - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator+(mat<3, 3, T, Q> const& m, T scalar) { return mat<3, 3, T, Q>( @@ -351,7 +351,7 @@ namespace glm m[2] + scalar); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator+(T scalar, mat<3, 3, T, Q> const& m) { return mat<3, 3, T, Q>( @@ -360,7 +360,7 @@ namespace glm m[2] + scalar); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator+(mat<3, 3, T, Q> const& m1, mat<3, 3, T, Q> const& m2) { return mat<3, 3, T, Q>( @@ -369,7 +369,7 @@ namespace glm m1[2] + m2[2]); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator-(mat<3, 3, T, Q> const& m, T scalar) { return mat<3, 3, T, Q>( @@ -378,7 +378,7 @@ namespace glm m[2] - scalar); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator-(T scalar, mat<3, 3, T, Q> const& m) { return mat<3, 3, T, Q>( @@ -387,7 +387,7 @@ namespace glm scalar - m[2]); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator-(mat<3, 3, T, Q> const& m1, mat<3, 3, T, Q> const& m2) { return mat<3, 3, T, Q>( @@ -396,7 +396,7 @@ namespace glm m1[2] - m2[2]); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator*(mat<3, 3, T, Q> const& m, T scalar) { return mat<3, 3, T, Q>( @@ -405,7 +405,7 @@ namespace glm m[2] * scalar); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator*(T scalar, mat<3, 3, T, Q> const& m) { return mat<3, 3, T, Q>( @@ -414,7 +414,7 @@ namespace glm m[2] * scalar); } - template + template GLM_FUNC_QUALIFIER typename mat<3, 3, T, Q>::col_type operator*(mat<3, 3, T, Q> const& m, typename mat<3, 3, T, Q>::row_type const& v) { return typename mat<3, 3, T, Q>::col_type( @@ -423,7 +423,7 @@ namespace glm m[0][2] * v.x + m[1][2] * v.y + m[2][2] * v.z); } - template + template GLM_FUNC_QUALIFIER typename mat<3, 3, T, Q>::row_type operator*(typename mat<3, 3, T, Q>::col_type const& v, mat<3, 3, T, Q> const& m) { return typename mat<3, 3, T, Q>::row_type( @@ -432,7 +432,7 @@ namespace glm m[2][0] * v.x + m[2][1] * v.y + m[2][2] * v.z); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> operator*(mat<3, 3, T, Q> const& m1, mat<3, 3, T, Q> const& m2) { T const SrcA00 = m1[0][0]; diff --git a/glm/detail/type_mat3x4.inl b/glm/detail/type_mat3x4.inl index 28d3198f..9336f284 100644 --- a/glm/detail/type_mat3x4.inl +++ b/glm/detail/type_mat3x4.inl @@ -39,7 +39,7 @@ namespace glm } template - GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat + GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat ( T x0, T y0, T z0, T w0, T x1, T y1, T z1, T w1, @@ -52,7 +52,7 @@ namespace glm } template - GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat + GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat ( col_type const& v0, col_type const& v1, @@ -71,7 +71,7 @@ namespace glm typename X1, typename Y1, typename Z1, typename W1, typename X2, typename Y2, typename Z2, typename W2, typename X3, typename Y3, typename Z3, typename W3> - GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat + GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat ( X1 x1, Y1 y1, Z1 z1, W1 w1, X2 x2, Y2 y2, Z2 z2, W2 w2, @@ -82,10 +82,10 @@ namespace glm this->value[1] = col_type(static_cast(x2), value_type(y2), value_type(z2), value_type(w2)); this->value[2] = col_type(static_cast(x3), value_type(y3), value_type(z3), value_type(w3)); } - + template template - GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat + GLM_FUNC_QUALIFIER mat<3, 4, T, Q>::mat ( vec<4, V1, Q> const& v1, vec<4, V2, Q> const& v2, @@ -96,7 +96,7 @@ namespace glm this->value[1] = col_type(v2); this->value[2] = col_type(v3); } - + // -- Matrix conversions -- template @@ -201,8 +201,8 @@ namespace glm } # endif//!GLM_HAS_DEFAULTED_FUNCTIONS - template - template + template + template GLM_FUNC_QUALIFIER mat<3, 4, T, Q>& mat<3, 4, T, Q>::operator=(mat<3, 4, U, Q> const& m) { this->value[0] = m[0]; @@ -211,8 +211,8 @@ namespace glm return *this; } - template - template + template + template GLM_FUNC_QUALIFIER mat<3, 4, T, Q>& mat<3, 4, T, Q>::operator+=(U s) { this->value[0] += s; @@ -221,8 +221,8 @@ namespace glm return *this; } - template - template + template + template GLM_FUNC_QUALIFIER mat<3, 4, T, Q>& mat<3, 4, T, Q>::operator+=(mat<3, 4, U, Q> const& m) { this->value[0] += m[0]; diff --git a/glm/detail/type_mat4x2.inl b/glm/detail/type_mat4x2.inl index cc496232..c0902ae5 100644 --- a/glm/detail/type_mat4x2.inl +++ b/glm/detail/type_mat4x2.inl @@ -6,7 +6,7 @@ namespace glm // -- Constructors -- # if !GLM_HAS_DEFAULTED_FUNCTIONS - template + template GLM_FUNC_QUALIFIER mat<4, 2, T, Q>::mat() {} # endif @@ -92,7 +92,7 @@ namespace glm this->value[2] = col_type(static_cast(x3), value_type(y3)); this->value[3] = col_type(static_cast(x4), value_type(y4)); } - + template template GLM_FUNC_QUALIFIER mat<4, 2, T, Q>::mat diff --git a/glm/detail/type_mat4x3.inl b/glm/detail/type_mat4x3.inl index 4fe9a45d..92b0b408 100644 --- a/glm/detail/type_mat4x3.inl +++ b/glm/detail/type_mat4x3.inl @@ -92,7 +92,7 @@ namespace glm this->value[2] = col_type(static_cast(x3), value_type(y3), value_type(z3)); this->value[3] = col_type(static_cast(x4), value_type(y4), value_type(z4)); } - + template template GLM_FUNC_QUALIFIER mat<4, 3, T, Q>::mat diff --git a/glm/detail/type_mat4x4.inl b/glm/detail/type_mat4x4.inl index c8dbc17c..1dccce40 100644 --- a/glm/detail/type_mat4x4.inl +++ b/glm/detail/type_mat4x4.inl @@ -85,7 +85,7 @@ namespace glm // -- Conversions -- - template + template template< typename X1, typename Y1, typename Z1, typename W1, typename X2, typename Y2, typename Z2, typename W2, @@ -124,7 +124,7 @@ namespace glm this->value[2] = col_type(static_cast(x3), value_type(y3), value_type(z3), value_type(w3)); this->value[3] = col_type(static_cast(x4), value_type(y4), value_type(z4), value_type(w4)); } - + template template GLM_FUNC_QUALIFIER mat<4, 4, T, Q>::mat @@ -133,7 +133,7 @@ namespace glm vec<4, V2, Q> const& v2, vec<4, V3, Q> const& v3, vec<4, V4, Q> const& v4 - ) + ) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559 || std::numeric_limits::is_integer || GLM_UNRESTRICTED_GENTYPE, "*mat4x4 constructor only takes float and integer types, 1st parameter type invalid."); GLM_STATIC_ASSERT(std::numeric_limits::is_iec559 || std::numeric_limits::is_integer || GLM_UNRESTRICTED_GENTYPE, "*mat4x4 constructor only takes float and integer types, 2nd parameter type invalid."); @@ -252,8 +252,8 @@ namespace glm } # endif//!GLM_HAS_DEFAULTED_FUNCTIONS - template - template + template + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q>& mat<4, 4, T, Q>::operator=(mat<4, 4, U, Q> const& m) { //memcpy could be faster diff --git a/glm/detail/type_vec.hpp b/glm/detail/type_vec.hpp index 7ed69c61..cf4f34c6 100644 --- a/glm/detail/type_vec.hpp +++ b/glm/detail/type_vec.hpp @@ -33,7 +33,7 @@ namespace detail GLM_ALIGNED_STORAGE_TYPE_STRUCT(16) GLM_ALIGNED_STORAGE_TYPE_STRUCT(32) GLM_ALIGNED_STORAGE_TYPE_STRUCT(64) - + # if GLM_ARCH & GLM_ARCH_SSE2_BIT template<> struct storage diff --git a/glm/detail/type_vec1.inl b/glm/detail/type_vec1.inl index e59606f1..a159a9d8 100644 --- a/glm/detail/type_vec1.inl +++ b/glm/detail/type_vec1.inl @@ -85,7 +85,7 @@ namespace glm # endif//!GLM_HAS_DEFAULTED_FUNCTIONS template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator=(vec<1, U, Q> const& v) { this->x = static_cast(v.x); @@ -93,7 +93,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator+=(U scalar) { this->x += static_cast(scalar); @@ -101,7 +101,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator+=(vec<1, U, Q> const& v) { this->x += static_cast(v.x); @@ -109,7 +109,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator-=(U scalar) { this->x -= static_cast(scalar); @@ -117,7 +117,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator-=(vec<1, U, Q> const& v) { this->x -= static_cast(v.x); @@ -125,7 +125,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator*=(U scalar) { this->x *= static_cast(scalar); @@ -133,7 +133,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator*=(vec<1, U, Q> const& v) { this->x *= static_cast(v.x); @@ -141,7 +141,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator/=(U scalar) { this->x /= static_cast(scalar); @@ -149,7 +149,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator/=(vec<1, U, Q> const& v) { this->x /= static_cast(v.x); @@ -172,7 +172,7 @@ namespace glm return *this; } - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> vec<1, T, Q>::operator++(int) { vec<1, T, Q> Result(*this); @@ -180,7 +180,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> vec<1, T, Q>::operator--(int) { vec<1, T, Q> Result(*this); @@ -191,7 +191,7 @@ namespace glm // -- Unary bit operators -- template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator%=(U scalar) { this->x %= static_cast(scalar); @@ -199,7 +199,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator%=(vec<1, U, Q> const& v) { this->x %= static_cast(v.x); @@ -207,7 +207,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator&=(U scalar) { this->x &= static_cast(scalar); @@ -215,7 +215,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator&=(vec<1, U, Q> const& v) { this->x &= static_cast(v.x); @@ -223,7 +223,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator|=(U scalar) { this->x |= static_cast(scalar); @@ -231,7 +231,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator|=(vec<1, U, Q> const& v) { this->x |= U(v.x); @@ -239,7 +239,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator^=(U scalar) { this->x ^= static_cast(scalar); @@ -247,7 +247,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator^=(vec<1, U, Q> const& v) { this->x ^= static_cast(v.x); @@ -255,7 +255,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator<<=(U scalar) { this->x <<= static_cast(scalar); @@ -263,7 +263,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator<<=(vec<1, U, Q> const& v) { this->x <<= static_cast(v.x); @@ -271,7 +271,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator>>=(U scalar) { this->x >>= static_cast(scalar); @@ -279,7 +279,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> & vec<1, T, Q>::operator>>=(vec<1, U, Q> const& v) { this->x >>= static_cast(v.x); @@ -303,14 +303,14 @@ namespace glm // -- Binary arithmetic operators -- - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> operator+(vec<1, T, Q> const& v, T scalar) { return vec<1, T, Q>( v.x + scalar); } - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> operator+(T scalar, vec<1, T, Q> const& v) { return vec<1, T, Q>( @@ -325,7 +325,7 @@ namespace glm } //operator- - template + template GLM_FUNC_QUALIFIER vec<1, T, Q> operator-(vec<1, T, Q> const& v, T scalar) { return vec<1, T, Q>( @@ -452,7 +452,7 @@ namespace glm return vec<1, T, Q>( v1.x | v2.x); } - + template GLM_FUNC_QUALIFIER vec<1, T, Q> operator^(vec<1, T, Q> const& v, T scalar) { @@ -525,13 +525,13 @@ namespace glm // -- Boolean operators -- - template + template GLM_FUNC_QUALIFIER bool operator==(vec<1, T, Q> const& v1, vec<1, T, Q> const& v2) { return detail::compute_equal::call(v1.x, v2.x); } - template + template GLM_FUNC_QUALIFIER bool operator!=(vec<1, T, Q> const& v1, vec<1, T, Q> const& v2) { return !(v1 == v2); diff --git a/glm/detail/type_vec2.hpp b/glm/detail/type_vec2.hpp index 78e70019..ef1d499c 100644 --- a/glm/detail/type_vec2.hpp +++ b/glm/detail/type_vec2.hpp @@ -39,7 +39,7 @@ namespace glm # pragma clang diagnostic ignored "-Wgnu-anonymous-struct" # pragma clang diagnostic ignored "-Wnested-anon-types" # endif - + union { struct{ T x, y; }; @@ -59,7 +59,7 @@ namespace glm # endif//GLM_SWIZZLE }; - + # if GLM_COMPILER & GLM_COMPILER_CLANG # pragma clang diagnostic pop # endif @@ -166,41 +166,41 @@ namespace glm // -- Unary bit operators -- - template + template GLM_FUNC_DECL vec & operator%=(U scalar); - template + template GLM_FUNC_DECL vec & operator%=(vec<1, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator%=(vec<2, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator&=(U scalar); - template + template GLM_FUNC_DECL vec & operator&=(vec<1, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator&=(vec<2, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator|=(U scalar); - template + template GLM_FUNC_DECL vec & operator|=(vec<1, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator|=(vec<2, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator^=(U scalar); - template + template GLM_FUNC_DECL vec & operator^=(vec<1, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator^=(vec<2, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator<<=(U scalar); - template + template GLM_FUNC_DECL vec & operator<<=(vec<1, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator<<=(vec<2, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator>>=(U scalar); - template + template GLM_FUNC_DECL vec & operator>>=(vec<1, U, Q> const& v); - template + template GLM_FUNC_DECL vec & operator>>=(vec<2, U, Q> const& v); }; diff --git a/glm/detail/type_vec2.inl b/glm/detail/type_vec2.inl index d82d22ea..c3ace8da 100644 --- a/glm/detail/type_vec2.inl +++ b/glm/detail/type_vec2.inl @@ -238,7 +238,7 @@ namespace glm return *this; } - template + template GLM_FUNC_QUALIFIER vec<2, T, Q> vec<2, T, Q>::operator++(int) { vec<2, T, Q> Result(*this); @@ -246,7 +246,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER vec<2, T, Q> vec<2, T, Q>::operator--(int) { vec<2, T, Q> Result(*this); @@ -430,7 +430,7 @@ namespace glm GLM_FUNC_QUALIFIER vec<2, T, Q> operator-(vec<2, T, Q> const& v) { return vec<2, T, Q>( - -v.x, + -v.x, -v.y); } diff --git a/glm/detail/type_vec3.hpp b/glm/detail/type_vec3.hpp index 3669ccde..06a042b0 100644 --- a/glm/detail/type_vec3.hpp +++ b/glm/detail/type_vec3.hpp @@ -58,7 +58,7 @@ namespace glm GLM_SWIZZLE3_4_MEMBERS(T, Q, s, t, p) # endif//GLM_SWIZZLE }; - + # if GLM_COMPILER & GLM_COMPILER_CLANG # pragma clang diagnostic pop # endif @@ -385,7 +385,7 @@ namespace glm template GLM_FUNC_DECL vec<3, T, Q> operator>>(vec<3, T, Q> const& v1, vec<3, T, Q> const& v2); - template + template GLM_FUNC_DECL vec<3, T, Q> operator~(vec<3, T, Q> const& v); // -- Boolean operators -- diff --git a/glm/detail/type_vec3.inl b/glm/detail/type_vec3.inl index 75488c4e..623f2ee7 100644 --- a/glm/detail/type_vec3.inl +++ b/glm/detail/type_vec3.inl @@ -283,7 +283,7 @@ namespace glm return *this; } - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> vec<3, T, Q>::operator++(int) { vec<3, T, Q> Result(*this); @@ -291,7 +291,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> vec<3, T, Q>::operator--(int) { vec<3, T, Q> Result(*this); @@ -372,7 +372,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator|=(vec<1, U, Q> const& v) { this->x |= v.x; @@ -382,7 +382,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator|=(vec<3, U, Q> const& v) { this->x |= v.x; @@ -392,7 +392,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator^=(U scalar) { this->x ^= scalar; @@ -402,7 +402,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator^=(vec<1, U, Q> const& v) { this->x ^= v.x; @@ -412,7 +412,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator^=(vec<3, U, Q> const& v) { this->x ^= v.x; @@ -422,7 +422,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator<<=(U scalar) { this->x <<= scalar; @@ -432,7 +432,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator<<=(vec<1, U, Q> const& v) { this->x <<= static_cast(v.x); @@ -442,7 +442,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator<<=(vec<3, U, Q> const& v) { this->x <<= static_cast(v.x); @@ -452,7 +452,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator>>=(U scalar) { this->x >>= static_cast(scalar); @@ -462,7 +462,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator>>=(vec<1, U, Q> const& v) { this->x >>= static_cast(v.x); @@ -472,7 +472,7 @@ namespace glm } template - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> & vec<3, T, Q>::operator>>=(vec<3, U, Q> const& v) { this->x >>= static_cast(v.x); @@ -493,8 +493,8 @@ namespace glm GLM_FUNC_QUALIFIER vec<3, T, Q> operator-(vec<3, T, Q> const& v) { return vec<3, T, Q>( - -v.x, - -v.y, + -v.x, + -v.y, -v.z); } @@ -563,7 +563,7 @@ namespace glm v.z - scalar.x); } - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> operator-(T scalar, vec<3, T, Q> const& v) { return vec<3, T, Q>( @@ -572,7 +572,7 @@ namespace glm scalar - v.z); } - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> operator-(vec<1, T, Q> const& scalar, vec<3, T, Q> const& v) { return vec<3, T, Q>( @@ -952,7 +952,7 @@ namespace glm v1.z >> v2.z); } - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> operator~(vec<3, T, Q> const& v) { return vec<3, T, Q>( diff --git a/glm/detail/type_vec4_simd.inl b/glm/detail/type_vec4_simd.inl index c31551f0..adfb20cf 100644 --- a/glm/detail/type_vec4_simd.inl +++ b/glm/detail/type_vec4_simd.inl @@ -9,7 +9,7 @@ namespace detail # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED template struct _swizzle_base1<4, float, Q, E0,E1,E2,E3, true> : public _swizzle_base0 - { + { GLM_FUNC_QUALIFIER vec<4, float, Q> operator ()() const { __m128 data = *reinterpret_cast<__m128 const*>(&this->_buffer); @@ -26,7 +26,7 @@ namespace detail template struct _swizzle_base1<4, int32, Q, E0,E1,E2,E3, true> : public _swizzle_base0 - { + { GLM_FUNC_QUALIFIER vec<4, int32, Q> operator ()() const { __m128i data = *reinterpret_cast<__m128i const*>(&this->_buffer); @@ -39,7 +39,7 @@ namespace detail template struct _swizzle_base1<4, uint32, Q, E0,E1,E2,E3, true> : public _swizzle_base0 - { + { GLM_FUNC_QUALIFIER vec<4, uint32, Q> operator ()() const { __m128i data = *reinterpret_cast<__m128i const*>(&this->_buffer); diff --git a/glm/exponential.hpp b/glm/exponential.hpp index 0e1e918f..8fac30ee 100644 --- a/glm/exponential.hpp +++ b/glm/exponential.hpp @@ -1,11 +1,11 @@ /// @ref core /// @file glm/exponential.hpp -/// +/// /// @see GLSL 4.20.8 specification, section 8.2 Exponential Functions /// /// @defgroup core_func_exponential Exponential functions /// @ingroup core -/// +/// /// Include to use these core features. /// /// These all operate component-wise. The description is per component. @@ -23,7 +23,7 @@ namespace glm /// @addtogroup core_func_exponential /// @{ - /// Returns 'base' raised to the power 'exponent'. + /// Returns 'base' raised to the power 'exponent'. /// /// @param base Floating point value. pow function is defined for input values of 'base' defined in the range (inf-, inf+) in the limit of the type qualifier. /// @param exponent Floating point value representing the 'exponent'. @@ -38,39 +38,39 @@ namespace glm /// @param v exp function is defined for input values of v defined in the range (inf-, inf+) in the limit of the type qualifier. /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL exp man page /// @see GLSL 4.20.8 specification, section 8.2 Exponential Functions template GLM_FUNC_DECL vec exp(vec const& v); - /// Returns the natural logarithm of v, i.e., - /// returns the value y which satisfies the equation x = e^y. + /// Returns the natural logarithm of v, i.e., + /// returns the value y which satisfies the equation x = e^y. /// Results are undefined if v <= 0. /// /// @param v log function is defined for input values of v defined in the range (0, inf+) in the limit of the type qualifier. /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL log man page /// @see GLSL 4.20.8 specification, section 8.2 Exponential Functions template GLM_FUNC_DECL vec log(vec const& v); /// Returns 2 raised to the v power. - /// + /// /// @param v exp2 function is defined for input values of v defined in the range (inf-, inf+) in the limit of the type qualifier. /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL exp2 man page /// @see GLSL 4.20.8 specification, section 8.2 Exponential Functions template GLM_FUNC_DECL vec exp2(vec const& v); - /// Returns the base 2 log of x, i.e., returns the value y, + /// Returns the base 2 log of x, i.e., returns the value y, /// which satisfies the equation x = 2 ^ y. - /// + /// /// @param v log2 function is defined for input values of v defined in the range (0, inf+) in the limit of the type qualifier. /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. @@ -81,22 +81,22 @@ namespace glm GLM_FUNC_DECL vec log2(vec const& v); /// Returns the positive square root of v. - /// + /// /// @param v sqrt function is defined for input values of v defined in the range [0, inf+) in the limit of the type qualifier. /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL sqrt man page /// @see GLSL 4.20.8 specification, section 8.2 Exponential Functions template GLM_FUNC_DECL vec sqrt(vec const& v); /// Returns the reciprocal of the positive square root of v. - /// + /// /// @param v inversesqrt function is defined for input values of v defined in the range [0, inf+) in the limit of the type qualifier. /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL inversesqrt man page /// @see GLSL 4.20.8 specification, section 8.2 Exponential Functions template diff --git a/glm/ext/vec1.hpp b/glm/ext/vec1.hpp index f3bb1e34..44dc004f 100644 --- a/glm/ext/vec1.hpp +++ b/glm/ext/vec1.hpp @@ -7,7 +7,7 @@ /// @ingroup ext /// /// Include to use the features of this extension. -/// +/// /// Add vec1, ivec1, uvec1 and bvec1 types. #pragma once @@ -56,7 +56,7 @@ namespace glm # pragma clang diagnostic ignored "-Wgnu-anonymous-struct" # pragma clang diagnostic ignored "-Wnested-anon-types" # endif - + union { T x; @@ -75,7 +75,7 @@ namespace glm _GLM_SWIZZLE1_4_MEMBERS(T, Q, tvec4, s) # endif//GLM_SWIZZLE*/ }; - + # if GLM_COMPILER & GLM_COMPILER_CLANG # pragma clang diagnostic pop # endif diff --git a/glm/ext/vector_relational.hpp b/glm/ext/vector_relational.hpp index da133969..350ed0d9 100644 --- a/glm/ext/vector_relational.hpp +++ b/glm/ext/vector_relational.hpp @@ -1,13 +1,13 @@ /// @ref ext_vector_relational /// @file glm/ext/vector_relational.hpp -/// +/// /// @see core (dependence) /// /// @defgroup ext_vector_relational GLM_EXT_vector_relational /// @ingroup ext /// /// Include to use the features of this extension. -/// +/// /// Comparison functions for a user defined epsilon values. #pragma once diff --git a/glm/fwd.hpp b/glm/fwd.hpp index 553dfb07..002fa5df 100644 --- a/glm/fwd.hpp +++ b/glm/fwd.hpp @@ -67,17 +67,17 @@ namespace glm /// /// @see gtc_quaternion typedef tquat lowp_dquat; - + /// Quaternion of medium double-qualifier floating-point numbers. /// /// @see gtc_quaternion typedef tquat mediump_dquat; - + /// Quaternion of high double-qualifier floating-point numbers. /// /// @see gtc_quaternion typedef tquat highp_dquat; - + #if(defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE)) typedef highp_dquat dquat; #elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE)) @@ -100,7 +100,7 @@ namespace glm /// Low qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 lowp_int8; - + /// Low qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 lowp_int16; @@ -116,7 +116,7 @@ namespace glm /// Low qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 lowp_int8_t; - + /// Low qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 lowp_int16_t; @@ -132,7 +132,7 @@ namespace glm /// Low qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 lowp_i8; - + /// Low qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 lowp_i16; @@ -148,7 +148,7 @@ namespace glm /// Medium qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 mediump_int8; - + /// Medium qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 mediump_int16; @@ -164,7 +164,7 @@ namespace glm /// Medium qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 mediump_int8_t; - + /// Medium qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 mediump_int16_t; @@ -180,7 +180,7 @@ namespace glm /// Medium qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 mediump_i8; - + /// Medium qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 mediump_i16; @@ -196,7 +196,7 @@ namespace glm /// High qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 highp_int8; - + /// High qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 highp_int16; @@ -212,7 +212,7 @@ namespace glm /// High qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 highp_int8_t; - + /// High qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 highp_int16_t; @@ -228,7 +228,7 @@ namespace glm /// High qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 highp_i8; - + /// High qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 highp_i16; @@ -240,12 +240,12 @@ namespace glm /// High qualifier 64 bit signed integer type. /// @see gtc_type_precision typedef detail::int64 highp_i64; - + /// 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 int8; - + /// 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 int16; @@ -268,7 +268,7 @@ namespace glm /// 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 int8_t; - + /// 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 int16_t; @@ -285,7 +285,7 @@ namespace glm /// 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 i8; - + /// 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 i16; @@ -297,59 +297,59 @@ namespace glm /// 64 bit signed integer type. /// @see gtc_type_precision typedef detail::int64 i64; - - - + + + /// Low qualifier 8 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i8, lowp> lowp_i8vec1; - + /// Low qualifier 8 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i8, lowp> lowp_i8vec2; - + /// Low qualifier 8 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i8, lowp> lowp_i8vec3; - + /// Low qualifier 8 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i8, lowp> lowp_i8vec4; - + /// Medium qualifier 8 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i8, mediump> mediump_i8vec1; - + /// Medium qualifier 8 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i8, mediump> mediump_i8vec2; - + /// Medium qualifier 8 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i8, mediump> mediump_i8vec3; - + /// Medium qualifier 8 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i8, mediump> mediump_i8vec4; - - + + /// High qualifier 8 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i8, highp> highp_i8vec1; - + /// High qualifier 8 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i8, highp> highp_i8vec2; - + /// High qualifier 8 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i8, highp> highp_i8vec3; - + /// High qualifier 8 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i8, highp> highp_i8vec4; - + #if(defined(GLM_PRECISION_LOWP_INT)) typedef lowp_i8vec1 i8vec1; typedef lowp_i8vec2 i8vec2; @@ -359,77 +359,77 @@ namespace glm typedef mediump_i8vec1 i8vec1; typedef mediump_i8vec2 i8vec2; typedef mediump_i8vec3 i8vec3; - typedef mediump_i8vec4 i8vec4; + typedef mediump_i8vec4 i8vec4; #else /// Default qualifier 8 bit signed integer scalar type. /// @see gtc_type_precision typedef highp_i8vec1 i8vec1; - + /// Default qualifier 8 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef highp_i8vec2 i8vec2; - + /// Default qualifier 8 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef highp_i8vec3 i8vec3; - + /// Default qualifier 8 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef highp_i8vec4 i8vec4; #endif - - + + /// Low qualifier 16 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i16, lowp> lowp_i16vec1; - + /// Low qualifier 16 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i16, lowp> lowp_i16vec2; - + /// Low qualifier 16 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i16, lowp> lowp_i16vec3; - + /// Low qualifier 16 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i16, lowp> lowp_i16vec4; - - + + /// Medium qualifier 16 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i16, mediump> mediump_i16vec1; - + /// Medium qualifier 16 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i16, mediump> mediump_i16vec2; - + /// Medium qualifier 16 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i16, mediump> mediump_i16vec3; - + /// Medium qualifier 16 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i16, mediump> mediump_i16vec4; - - + + /// High qualifier 16 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i16, highp> highp_i16vec1; - + /// High qualifier 16 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i16, highp> highp_i16vec2; - + /// High qualifier 16 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i16, highp> highp_i16vec3; - + /// High qualifier 16 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i16, highp> highp_i16vec4; - - + + #if(defined(GLM_PRECISION_LOWP_INT)) typedef lowp_i16vec1 i16vec1; typedef lowp_i16vec2 i16vec2; @@ -444,15 +444,15 @@ namespace glm /// Default qualifier 16 bit signed integer scalar type. /// @see gtc_type_precision typedef highp_i16vec1 i16vec1; - + /// Default qualifier 16 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef highp_i16vec2 i16vec2; - + /// Default qualifier 16 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef highp_i16vec3 i16vec3; - + /// Default qualifier 16 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef highp_i16vec4 i16vec4; @@ -462,53 +462,53 @@ namespace glm /// Low qualifier 32 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i32, lowp> lowp_i32vec1; - + /// Low qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i32, lowp> lowp_i32vec2; - + /// Low qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i32, lowp> lowp_i32vec3; - + /// Low qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i32, lowp> lowp_i32vec4; - - + + /// Medium qualifier 32 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i32, mediump> mediump_i32vec1; - + /// Medium qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i32, mediump> mediump_i32vec2; - + /// Medium qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i32, mediump> mediump_i32vec3; - + /// Medium qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i32, mediump> mediump_i32vec4; - - + + /// High qualifier 32 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i32, highp> highp_i32vec1; - + /// High qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i32, highp> highp_i32vec2; - + /// High qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i32, highp> highp_i32vec3; - + /// High qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i32, highp> highp_i32vec4; - + #if(defined(GLM_PRECISION_LOWP_INT)) typedef lowp_i32vec1 i32vec1; typedef lowp_i32vec2 i32vec2; @@ -523,15 +523,15 @@ namespace glm /// Default qualifier 32 bit signed integer scalar type. /// @see gtc_type_precision typedef highp_i32vec1 i32vec1; - + /// Default qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef highp_i32vec2 i32vec2; - + /// Default qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef highp_i32vec3 i32vec3; - + /// Default qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef highp_i32vec4 i32vec4; @@ -541,53 +541,53 @@ namespace glm /// Low qualifier 32 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i32, lowp> lowp_i32vec1; - + /// Low qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i32, lowp> lowp_i32vec2; - + /// Low qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i32, lowp> lowp_i32vec3; - + /// Low qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i32, lowp> lowp_i32vec4; - - + + /// Medium qualifier 32 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i32, mediump> mediump_i32vec1; - + /// Medium qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i32, mediump> mediump_i32vec2; - + /// Medium qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i32, mediump> mediump_i32vec3; - + /// Medium qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i32, mediump> mediump_i32vec4; - - + + /// High qualifier 32 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i32, highp> highp_i32vec1; - + /// High qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i32, highp> highp_i32vec2; - + /// High qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i32, highp> highp_i32vec3; - + /// High qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i32, highp> highp_i32vec4; - + #if(defined(GLM_PRECISION_LOWP_INT)) typedef lowp_i32vec1 i32vec1; typedef lowp_i32vec2 i32vec2; @@ -606,68 +606,68 @@ namespace glm /// Default qualifier 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef highp_i32vec2 i32vec2; - + /// Default qualifier 32 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef highp_i32vec3 i32vec3; - + /// Default qualifier 32 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef highp_i32vec4 i32vec4; #endif - + /// Low qualifier 64 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i64, lowp> lowp_i64vec1; - + /// Low qualifier 64 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i64, lowp> lowp_i64vec2; - + /// Low qualifier 64 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i64, lowp> lowp_i64vec3; - + /// Low qualifier 64 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i64, lowp> lowp_i64vec4; - - + + /// Medium qualifier 64 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i64, mediump> mediump_i64vec1; - + /// Medium qualifier 64 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i64, mediump> mediump_i64vec2; - + /// Medium qualifier 64 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i64, mediump> mediump_i64vec3; - + /// Medium qualifier 64 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i64, mediump> mediump_i64vec4; - - + + /// High qualifier 64 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i64, highp> highp_i64vec1; - + /// High qualifier 64 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i64, highp> highp_i64vec2; - + /// High qualifier 64 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, i64, highp> highp_i64vec3; - + /// High qualifier 64 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, i64, highp> highp_i64vec4; - + #if(defined(GLM_PRECISION_LOWP_INT)) typedef lowp_i64vec1 i64vec1; typedef lowp_i64vec2 i64vec2; @@ -686,188 +686,188 @@ namespace glm /// Default qualifier 64 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef highp_i64vec2 i64vec2; - + /// Default qualifier 64 bit signed integer vector of 3 components type. /// @see gtc_type_precision typedef highp_i64vec3 i64vec3; - + /// Default qualifier 64 bit signed integer vector of 4 components type. /// @see gtc_type_precision typedef highp_i64vec4 i64vec4; #endif - - + + ///////////////////////////// // Unsigned int vector types - + /// Low qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 lowp_uint8; - + /// Low qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 lowp_uint16; - + /// Low qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 lowp_uint32; - + /// Low qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 lowp_uint64; - - + + /// Low qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 lowp_uint8_t; - + /// Low qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 lowp_uint16_t; - + /// Low qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 lowp_uint32_t; - + /// Low qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 lowp_uint64_t; - - + + /// Low qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 lowp_u8; - + /// Low qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 lowp_u16; - + /// Low qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 lowp_u32; - + /// Low qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 lowp_u64; - - - + + + /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 mediump_uint8; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 mediump_uint16; - + /// Medium qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 mediump_uint32; - + /// Medium qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 mediump_uint64; - + /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 mediump_uint8_t; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 mediump_uint16_t; - + /// Medium qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 mediump_uint32_t; - + /// Medium qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 mediump_uint64_t; - + /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 mediump_u8; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 mediump_u16; - + /// Medium qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 mediump_u32; - + /// Medium qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 mediump_u64; - - - + + + /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 highp_uint8; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 highp_uint16; - + /// Medium qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 highp_uint32; - + /// Medium qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 highp_uint64; - + /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 highp_uint8_t; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 highp_uint16_t; - + /// Medium qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 highp_uint32_t; - + /// Medium qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 highp_uint64_t; - + /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 highp_u8; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 highp_u16; - + /// Medium qualifier 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 highp_u32; - + /// Medium qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 highp_u64; - - - + + + /// 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 uint8; - + /// 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 uint16; - + /// 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 uint32; - + /// 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 uint64; - + #if GLM_HAS_EXTENDED_INTEGER_TYPE using std::uint8_t; using std::uint16_t; @@ -877,15 +877,15 @@ namespace glm /// 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 uint8_t; - + /// 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 uint16_t; - + /// 32 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint32 uint32_t; - + /// 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 uint64_t; @@ -912,19 +912,19 @@ namespace glm /// Low qualifier 8 bit unsigned integer scalar type. /// @see gtc_type_precision typedef vec<1, u8, lowp> lowp_u8vec1; - + /// Low qualifier 8 bit unsigned integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, u8, lowp> lowp_u8vec2; - + /// Low qualifier 8 bit unsigned integer vector of 3 components type. /// @see gtc_type_precision typedef vec<3, u8, lowp> lowp_u8vec3; - + /// Low qualifier 8 bit unsigned integer vector of 4 components type. /// @see gtc_type_precision typedef vec<4, u8, lowp> lowp_u8vec4; - + /// Medium qualifier 8 bit unsigned integer scalar type. /// @see gtc_type_precision @@ -968,7 +968,7 @@ namespace glm typedef mediump_u8vec1 u8vec1; typedef mediump_u8vec2 u8vec2; typedef mediump_u8vec3 u8vec3; - typedef mediump_u8vec4 u8vec4; + typedef mediump_u8vec4 u8vec4; #else /// Default qualifier 8 bit unsigned integer scalar type. /// @see gtc_type_precision @@ -1215,18 +1215,18 @@ namespace glm /// Default qualifier 32 bit unsigned integer vector of 2 components type. /// @see gtc_type_precision typedef highp_u32vec2 u32vec2; - + /// Default qualifier 32 bit unsigned integer vector of 3 components type. /// @see gtc_type_precision typedef highp_u32vec3 u32vec3; - + /// Default qualifier 32 bit unsigned integer vector of 4 components type. /// @see gtc_type_precision typedef highp_u32vec4 u32vec4; #endif - + /// Low qualifier 64 bit unsigned integer scalar type. /// @see gtc_type_precision typedef vec<1, u64, lowp> lowp_u64vec1; @@ -1295,17 +1295,17 @@ namespace glm /// Default qualifier 64 bit unsigned integer vector of 2 components type. /// @see gtc_type_precision typedef highp_u64vec2 u64vec2; - + /// Default qualifier 64 bit unsigned integer vector of 3 components type. /// @see gtc_type_precision typedef highp_u64vec3 u64vec3; - + /// Default qualifier 64 bit unsigned integer vector of 4 components type. /// @see gtc_type_precision typedef highp_u64vec4 u64vec4; #endif - - + + ////////////////////// // Float vector types @@ -1369,7 +1369,7 @@ namespace glm /// Low 32 bit single-qualifier floating-point scalar. /// @see gtc_type_precision typedef detail::float32 lowp_float32_t; - + /// Low 64 bit double-qualifier floating-point scalar. /// @see gtc_type_precision typedef detail::float64 lowp_float64_t; @@ -1877,7 +1877,7 @@ namespace glm /// High single-qualifier floating-point 3x3 matrix. /// @see gtc_type_precision typedef highp_fmat3x3 highp_fmat3; - + /// High single-qualifier floating-point 4x4 matrix. /// @see gtc_type_precision typedef highp_fmat4x4 highp_fmat4; @@ -2089,7 +2089,7 @@ namespace glm /// Low double-qualifier floating-point 4x3 matrix. /// @see gtc_type_precision typedef mat<4, 3, f64, lowp> lowp_f64mat4x3; - + /// Low double-qualifier floating-point 4x4 matrix. /// @see gtc_type_precision typedef mat<4, 4, f64, lowp> lowp_f64mat4x4; @@ -2375,7 +2375,7 @@ namespace glm /// Default single-qualifier floating-point 4x4 matrix. /// @see gtc_type_precision typedef highp_f32mat4x4 fmat4x4; - + /// Default single-qualifier floating-point 2x2 matrix. /// @see gtc_type_precision typedef fmat2x2 fmat2; @@ -2391,7 +2391,7 @@ namespace glm /// Default single-qualifier floating-point quaternion. /// @see gtc_type_precision typedef highp_fquat fquat; - + /// Default single-qualifier floating-point vector of 1 components. diff --git a/glm/geometric.hpp b/glm/geometric.hpp index f975a86b..e0380830 100644 --- a/glm/geometric.hpp +++ b/glm/geometric.hpp @@ -2,10 +2,10 @@ /// @file glm/geometric.hpp /// /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions -/// +/// /// @defgroup core_func_geometric Geometric functions /// @ingroup core -/// +/// /// Include to use these core features. /// /// These operate on vectors as vectors, not component-wise. @@ -20,10 +20,10 @@ namespace glm /// @{ /// Returns the length of x, i.e., sqrt(x * x). - /// + /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL length man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template @@ -33,7 +33,7 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL distance man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template @@ -43,7 +43,7 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL dot man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template @@ -52,7 +52,7 @@ namespace glm /// Returns the cross product of x and y. /// /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL cross man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template @@ -63,7 +63,7 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL normalize man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template @@ -73,7 +73,7 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL faceforward man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template @@ -82,12 +82,12 @@ namespace glm vec const& I, vec const& Nref); - /// For the incident vector I and surface orientation N, + /// For the incident vector I and surface orientation N, /// returns the reflection direction : result = I - 2.0 * dot(N, I) * N. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL reflect man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template @@ -95,13 +95,13 @@ namespace glm vec const& I, vec const& N); - /// For the incident vector I and surface normal N, - /// and the ratio of indices of refraction eta, + /// For the incident vector I and surface normal N, + /// and the ratio of indices of refraction eta, /// return the refraction vector. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Floating-point scalar types. - /// + /// /// @see GLSL refract man page /// @see GLSL 4.20.8 specification, section 8.5 Geometric Functions template diff --git a/glm/glm.hpp b/glm/glm.hpp index 2fb9fa29..d21749da 100644 --- a/glm/glm.hpp +++ b/glm/glm.hpp @@ -6,7 +6,7 @@ /// @brief Features that implement in C++ the GLSL specification as closely as possible. /// /// The GLM core consists of @ref core_types "C++ types that mirror GLSL types" and -/// C++ functions that mirror the GLSL functions. It also includes +/// C++ functions that mirror the GLSL functions. It also includes /// @ref core_precision "a set of qualifier-based types" that can be used in the appropriate /// functions. The C++ types are all based on a basic set of @ref core_template "template types". /// @@ -42,7 +42,7 @@ /// /// @defgroup core_template Template types /// -/// @brief The generic template types used as the basis for the core types. +/// @brief The generic template types used as the basis for the core types. /// /// These types are all templates used to define the actual @ref core_types. /// These templates are implementation details of GLM types and should not be used explicitly. @@ -52,25 +52,25 @@ /// @defgroup gtc Stable extensions /// /// @brief Additional features not specified by GLSL specification. -/// -/// GTC extensions aim to be stable. -/// +/// +/// GTC extensions aim to be stable. +/// /// Even if it's highly unrecommended, it's possible to include all the extensions at once by /// including . Otherwise, each extension needs to be included a specific file. -/// +/// /// @defgroup gtx Experimental extensions -/// +/// /// @brief Experimental features not specified by GLSL specification. -/// +/// /// Experimental extensions are useful functions and types, but the development of -/// their API and functionality is not necessarily stable. They can change +/// their API and functionality is not necessarily stable. They can change /// substantially between versions. Backwards compatibility is not much of an issue /// for them. -/// -/// Even if it's highly unrecommended, it's possible to include all the extensions -/// at once by including . Otherwise, each extension needs to be +/// +/// Even if it's highly unrecommended, it's possible to include all the extensions +/// at once by including . Otherwise, each extension needs to be /// included a specific file. -/// +/// /// @mainpage OpenGL Mathematics (GLM) /// - Website: glm.g-truc.net /// - GLM API documentation diff --git a/glm/gtc/bitfield.hpp b/glm/gtc/bitfield.hpp index cfc9667e..9dcec534 100644 --- a/glm/gtc/bitfield.hpp +++ b/glm/gtc/bitfield.hpp @@ -6,9 +6,9 @@ /// /// @defgroup gtc_bitfield GLM_GTC_bitfield /// @ingroup gtc -/// +/// /// Include to use the features of this extension. -/// +/// /// Allow to perform bit operations on integer values #include "../detail/setup.hpp" @@ -35,7 +35,7 @@ namespace glm /// @see gtc_bitfield template GLM_FUNC_DECL genIUType mask(genIUType Bits); - + /// Build a mask of 'count' bits /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector @@ -113,112 +113,112 @@ namespace glm /// Interleaves the bits of x and y. /// The first bit is the first bit of x followed by the first bit of y. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int16 bitfieldInterleave(int8 x, int8 y); /// Interleaves the bits of x and y. /// The first bit is the first bit of x followed by the first bit of y. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint16 bitfieldInterleave(uint8 x, uint8 y); /// Interleaves the bits of x and y. /// The first bit is the first bit of x followed by the first bit of y. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int32 bitfieldInterleave(int16 x, int16 y); /// Interleaves the bits of x and y. /// The first bit is the first bit of x followed by the first bit of y. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint32 bitfieldInterleave(uint16 x, uint16 y); /// Interleaves the bits of x and y. /// The first bit is the first bit of x followed by the first bit of y. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int64 bitfieldInterleave(int32 x, int32 y); /// Interleaves the bits of x and y. /// The first bit is the first bit of x followed by the first bit of y. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint64 bitfieldInterleave(uint32 x, uint32 y); /// Interleaves the bits of x, y and z. /// The first bit is the first bit of x followed by the first bit of y and the first bit of z. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int32 bitfieldInterleave(int8 x, int8 y, int8 z); /// Interleaves the bits of x, y and z. /// The first bit is the first bit of x followed by the first bit of y and the first bit of z. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint32 bitfieldInterleave(uint8 x, uint8 y, uint8 z); /// Interleaves the bits of x, y and z. /// The first bit is the first bit of x followed by the first bit of y and the first bit of z. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int64 bitfieldInterleave(int16 x, int16 y, int16 z); - /// Interleaves the bits of x, y and z. + /// Interleaves the bits of x, y and z. /// The first bit is the first bit of x followed by the first bit of y and the first bit of z. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint64 bitfieldInterleave(uint16 x, uint16 y, uint16 z); - /// Interleaves the bits of x, y and z. + /// Interleaves the bits of x, y and z. /// The first bit is the first bit of x followed by the first bit of y and the first bit of z. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int64 bitfieldInterleave(int32 x, int32 y, int32 z); - /// Interleaves the bits of x, y and z. + /// Interleaves the bits of x, y and z. /// The first bit is the first bit of x followed by the first bit of y and the first bit of z. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint64 bitfieldInterleave(uint32 x, uint32 y, uint32 z); - /// Interleaves the bits of x, y, z and w. + /// Interleaves the bits of x, y, z and w. /// The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int32 bitfieldInterleave(int8 x, int8 y, int8 z, int8 w); - /// Interleaves the bits of x, y, z and w. + /// Interleaves the bits of x, y, z and w. /// The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint32 bitfieldInterleave(uint8 x, uint8 y, uint8 z, uint8 w); - /// Interleaves the bits of x, y, z and w. + /// Interleaves the bits of x, y, z and w. /// The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL int64 bitfieldInterleave(int16 x, int16 y, int16 z, int16 w); - /// Interleaves the bits of x, y, z and w. + /// Interleaves the bits of x, y, z and w. /// The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. /// The other bits are interleaved following the previous sequence. - /// + /// /// @see gtc_bitfield GLM_FUNC_DECL uint64 bitfieldInterleave(uint16 x, uint16 y, uint16 z, uint16 w); diff --git a/glm/gtc/bitfield.inl b/glm/gtc/bitfield.inl index 68e3742f..97357408 100644 --- a/glm/gtc/bitfield.inl +++ b/glm/gtc/bitfield.inl @@ -103,7 +103,7 @@ namespace detail return REG1 | (REG2 << 1) | (REG3 << 2); } - + template<> GLM_FUNC_QUALIFIER glm::uint64 bitfieldInterleave(glm::uint16 x, glm::uint16 y, glm::uint16 z) { diff --git a/glm/gtc/constants.hpp b/glm/gtc/constants.hpp index 482cf8dc..f55f6190 100644 --- a/glm/gtc/constants.hpp +++ b/glm/gtc/constants.hpp @@ -7,7 +7,7 @@ /// @ingroup gtc /// /// Include to use the features of this extension. -/// +/// /// Provide a list of constants and precomputed useful values. #pragma once diff --git a/glm/gtc/constants.inl b/glm/gtc/constants.inl index 2ea10855..b1d277c4 100644 --- a/glm/gtc/constants.inl +++ b/glm/gtc/constants.inl @@ -50,7 +50,7 @@ namespace glm template GLM_FUNC_QUALIFIER GLM_CONSTEXPR genType three_over_two_pi() { - return genType(4.71238898038468985769396507491925432); + return genType(4.71238898038468985769396507491925432); } template diff --git a/glm/gtc/epsilon.hpp b/glm/gtc/epsilon.hpp index 8e932a44..dce03ef7 100644 --- a/glm/gtc/epsilon.hpp +++ b/glm/gtc/epsilon.hpp @@ -1,6 +1,6 @@ /// @ref gtc_epsilon /// @file glm/gtc/epsilon.hpp -/// +/// /// @see core (dependence) /// @see gtc_quaternion (dependence) /// @@ -8,7 +8,7 @@ /// @ingroup gtc /// /// Include to use the features of this extension. -/// +/// /// Comparison functions for a user defined epsilon values. #pragma once diff --git a/glm/gtc/integer.hpp b/glm/gtc/integer.hpp index 8749dd36..1d28c32c 100644 --- a/glm/gtc/integer.hpp +++ b/glm/gtc/integer.hpp @@ -38,10 +38,10 @@ namespace glm /// Returns a value equal to the nearest integer to x. /// The fraction 0.5 will round in a direction chosen by the /// implementation, presumably the direction that is fastest. - /// + /// /// @param x The values of the argument must be greater or equal to zero. /// @tparam T floating point scalar types. - /// + /// /// @see GLSL round man page /// @see gtc_integer template @@ -50,10 +50,10 @@ namespace glm /// Returns a value equal to the nearest integer to x. /// The fraction 0.5 will round in a direction chosen by the /// implementation, presumably the direction that is fastest. - /// + /// /// @param x The values of the argument must be greater or equal to zero. /// @tparam T floating point scalar types. - /// + /// /// @see GLSL round man page /// @see gtc_integer template diff --git a/glm/gtc/matrix_integer.hpp b/glm/gtc/matrix_integer.hpp index 863b7b40..59aec12e 100644 --- a/glm/gtc/matrix_integer.hpp +++ b/glm/gtc/matrix_integer.hpp @@ -134,7 +134,7 @@ namespace glm /// Low-qualifier signed integer 2x2 matrix. /// @see gtc_matrix_integer typedef mat<2, 2, int, lowp> lowp_imat2; - + /// Low-qualifier signed integer 3x3 matrix. /// @see gtc_matrix_integer typedef mat<3, 3, int, lowp> lowp_imat3; @@ -183,7 +183,7 @@ namespace glm /// High-qualifier unsigned integer 2x2 matrix. /// @see gtc_matrix_integer - typedef mat<2, 2, uint, highp> highp_umat2; + typedef mat<2, 2, uint, highp> highp_umat2; /// High-qualifier unsigned integer 3x3 matrix. /// @see gtc_matrix_integer @@ -283,7 +283,7 @@ namespace glm /// Low-qualifier unsigned integer 2x2 matrix. /// @see gtc_matrix_integer typedef mat<2, 2, uint, lowp> lowp_umat2; - + /// Low-qualifier unsigned integer 3x3 matrix. /// @see gtc_matrix_integer typedef mat<3, 3, uint, lowp> lowp_umat3; @@ -433,7 +433,7 @@ namespace glm typedef lowp_umat4x3 umat4x3; typedef lowp_umat4x4 umat4x4; #else //if(defined(GLM_PRECISION_MEDIUMP_UINT)) - + /// Unsigned integer 2x2 matrix. /// @see gtc_matrix_integer typedef mediump_umat2 umat2; diff --git a/glm/gtc/matrix_inverse.hpp b/glm/gtc/matrix_inverse.hpp index 0350c1d6..97e8d89b 100644 --- a/glm/gtc/matrix_inverse.hpp +++ b/glm/gtc/matrix_inverse.hpp @@ -29,15 +29,15 @@ namespace glm /// @{ /// Fast matrix inverse for affine matrix. - /// + /// /// @param m Input matrix to invert. /// @tparam genType Squared floating-point matrix: half, float or double. Inverse of matrix based of half-qualifier floating point value is highly innacurate. /// @see gtc_matrix_inverse - template + template GLM_FUNC_DECL genType affineInverse(genType const& m); /// Compute the inverse transpose of a matrix. - /// + /// /// @param m Input matrix to invert transpose. /// @tparam genType Squared floating-point matrix: half, float or double. Inverse of matrix based of half-qualifier floating point value is highly innacurate. /// @see gtc_matrix_inverse diff --git a/glm/gtc/matrix_transform.hpp b/glm/gtc/matrix_transform.hpp index a98033d2..0eca9e56 100644 --- a/glm/gtc/matrix_transform.hpp +++ b/glm/gtc/matrix_transform.hpp @@ -4,7 +4,7 @@ /// @see core (dependence) /// @see gtx_transform /// @see gtx_transform2 -/// +/// /// @defgroup gtc_matrix_transform GLM_GTC_matrix_transform /// @ingroup gtc /// @@ -14,7 +14,7 @@ /// /// The matrices generated by this extension use standard OpenGL fixed-function /// conventions. For example, the lookAt function generates a transform from world -/// space into the specific eye space that the projective matrix functions +/// space into the specific eye space that the projective matrix functions /// (perspective, ortho, etc) are designed to expect. The OpenGL compatibility /// specifications defines the particular layout of this eye space. @@ -37,7 +37,7 @@ namespace glm /// @{ /// Builds a translation 4 * 4 matrix created from a vector of 3 components. - /// + /// /// @param m Input matrix multiplied by this translation matrix. /// @param v Coordinates of a translation vector. /// @tparam T Value type used to build the matrix. Currently supported: half (not recommanded), float or double. @@ -54,34 +54,34 @@ namespace glm /// @see gtc_matrix_transform /// @see - translate(mat<4, 4, T, Q> const& m, T x, T y, T z) /// @see - translate(vec<3, T, Q> const& v) - /// @see glTranslate man page + /// @see glTranslate man page template GLM_FUNC_DECL mat<4, 4, T, Q> translate( mat<4, 4, T, Q> const& m, vec<3, T, Q> const& v); - /// Builds a rotation 4 * 4 matrix created from an axis vector and an angle. - /// + /// Builds a rotation 4 * 4 matrix created from an axis vector and an angle. + /// /// @param m Input matrix multiplied by this rotation matrix. /// @param angle Rotation angle expressed in radians. /// @param axis Rotation axis, recommended to be normalized. /// @tparam T Value type used to build the matrix. Supported: half, float or double. /// @see gtc_matrix_transform - /// @see - rotate(mat<4, 4, T, Q> const& m, T angle, T x, T y, T z) - /// @see - rotate(T angle, vec<3, T, Q> const& v) - /// @see glRotate man page + /// @see - rotate(mat<4, 4, T, Q> const& m, T angle, T x, T y, T z) + /// @see - rotate(T angle, vec<3, T, Q> const& v) + /// @see glRotate man page template GLM_FUNC_DECL mat<4, 4, T, Q> rotate( mat<4, 4, T, Q> const& m, T angle, vec<3, T, Q> const& axis); - /// Builds a scale 4 * 4 matrix created from 3 scalars. - /// + /// Builds a scale 4 * 4 matrix created from 3 scalars. + /// /// @param m Input matrix multiplied by this scale matrix. /// @param v Ratio of scaling for each axis. /// @tparam T Value type used to build the matrix. Currently supported: half (not recommended), float or double. /// @see gtc_matrix_transform /// @see - scale(mat<4, 4, T, Q> const& m, T x, T y, T z) /// @see - scale(vec<3, T, Q> const& v) - /// @see glScale man page + /// @see glScale man page template GLM_FUNC_DECL mat<4, 4, T, Q> scale( mat<4, 4, T, Q> const& m, vec<3, T, Q> const& v); @@ -91,7 +91,7 @@ namespace glm /// @tparam T Value type used to build the matrix. Currently supported: half (not recommanded), float or double. /// @see gtc_matrix_transform /// @see - glm::ortho(T const& left, T const& right, T const& bottom, T const& top, T const& zNear, T const& zFar) - /// @see gluOrtho2D man page + /// @see gluOrtho2D man page template GLM_FUNC_DECL mat<4, 4, T, defaultp> ortho( T left, T right, T bottom, T top); @@ -184,7 +184,7 @@ namespace glm /// @tparam T Value type used to build the matrix. Currently supported: half (not recommanded), float or double. /// @see gtc_matrix_transform /// @see - glm::ortho(T const& left, T const& right, T const& bottom, T const& top) - /// @see glOrtho man page + /// @see glOrtho man page template GLM_FUNC_DECL mat<4, 4, T, defaultp> ortho( T left, T right, T bottom, T top, T zNear, T zFar); @@ -268,7 +268,7 @@ namespace glm /// /// @tparam T Value type used to build the matrix. Currently supported: half (not recommanded), float or double. /// @see gtc_matrix_transform - /// @see glFrustum man page + /// @see glFrustum man page template GLM_FUNC_DECL mat<4, 4, T, defaultp> frustum( T left, T right, T bottom, T top, T near, T far); @@ -276,7 +276,7 @@ namespace glm /// Creates a matrix for a right handed, symetric perspective-view frustum. /// The near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -289,7 +289,7 @@ namespace glm /// Creates a matrix for a right handed, symetric perspective-view frustum. /// The near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -302,7 +302,7 @@ namespace glm /// Creates a matrix for a left handed, symetric perspective-view frustum. /// The near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -315,7 +315,7 @@ namespace glm /// Creates a matrix for a left handed, symetric perspective-view frustum. /// The near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -328,7 +328,7 @@ namespace glm /// Creates a matrix for a symetric perspective-view frustum using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise. /// The near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -341,7 +341,7 @@ namespace glm /// Creates a matrix for a symetric perspective-view frustum using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise. /// The near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -355,7 +355,7 @@ namespace glm /// Creates a matrix for a right handed, symetric perspective-view frustum. /// If GLM_FORCE_DEPTH_ZERO_TO_ONE is defined, the near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) /// Otherwise, the near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -369,7 +369,7 @@ namespace glm /// Creates a matrix for a left handed, symetric perspective-view frustum. /// If GLM_FORCE_DEPTH_ZERO_TO_ONE is defined, the near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) /// Otherwise, the near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -382,21 +382,21 @@ namespace glm /// Creates a matrix for a symetric perspective-view frustum based on the default handedness and default near and far clip planes definition. /// To change default handedness use GLM_FORCE_LEFT_HANDED. To change default near and far clip planes definition use GLM_FORCE_DEPTH_ZERO_TO_ONE. - /// + /// /// @param fovy Specifies the field of view angle in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). /// @param far Specifies the distance from the viewer to the far clipping plane (always positive). /// @tparam T Value type used to build the matrix. Currently supported: half (not recommanded), float or double. /// @see gtc_matrix_transform - /// @see gluPerspective man page + /// @see gluPerspective man page template GLM_FUNC_DECL mat<4, 4, T, defaultp> perspective( T fovy, T aspect, T near, T far); /// Builds a perspective projection matrix based on a field of view using right-handed coordinates. /// The near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -410,7 +410,7 @@ namespace glm /// Builds a perspective projection matrix based on a field of view using right-handed coordinates. /// The near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -424,7 +424,7 @@ namespace glm /// Builds a perspective projection matrix based on a field of view using left-handed coordinates. /// The near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -438,7 +438,7 @@ namespace glm /// Builds a perspective projection matrix based on a field of view using left-handed coordinates. /// The near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -452,7 +452,7 @@ namespace glm /// Builds a perspective projection matrix based on a field of view using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise. /// The near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -466,7 +466,7 @@ namespace glm /// Builds a perspective projection matrix based on a field of view using left-handed coordinates if GLM_FORCE_LEFT_HANDED if defined or right-handed coordinates otherwise. /// The near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -481,7 +481,7 @@ namespace glm /// Builds a right handed perspective projection matrix based on a field of view. /// If GLM_FORCE_DEPTH_ZERO_TO_ONE is defined, the near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) /// Otherwise, the near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -496,7 +496,7 @@ namespace glm /// Builds a left handed perspective projection matrix based on a field of view. /// If GLM_FORCE_DEPTH_ZERO_TO_ONE is defined, the near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) /// Otherwise, the near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -510,7 +510,7 @@ namespace glm /// Builds a perspective projection matrix based on a field of view and the default handedness and default near and far clip planes definition. /// To change default handedness use GLM_FORCE_LEFT_HANDED. To change default near and far clip planes definition use GLM_FORCE_DEPTH_ZERO_TO_ONE. - /// + /// /// @param fov Expressed in radians. /// @param width Width of the viewport /// @param height Height of the viewport @@ -556,7 +556,7 @@ namespace glm T fovy, T aspect, T near); /// Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping. - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -567,7 +567,7 @@ namespace glm T fovy, T aspect, T near); /// Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping. - /// + /// /// @param fovy Specifies the field of view angle, in degrees, in the y direction. Expressed in radians. /// @param aspect Specifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height). /// @param near Specifies the distance from the viewer to the near clipping plane (always positive). @@ -580,7 +580,7 @@ namespace glm /// Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates. /// The near and far clip planes correspond to z normalized device coordinates of 0 and +1 respectively. (Direct3D clip volume definition) - /// + /// /// @param obj Specify the object coordinates. /// @param model Specifies the current modelview matrix /// @param proj Specifies the current projection matrix @@ -589,14 +589,14 @@ namespace glm /// @tparam T Native type used for the computation. Currently supported: half (not recommanded), float or double. /// @tparam U Currently supported: Floating-point types and integer types. /// @see gtc_matrix_transform - /// @see gluProject man page + /// @see gluProject man page template GLM_FUNC_DECL vec<3, T, Q> projectZO( vec<3, T, Q> const& obj, mat<4, 4, T, Q> const& model, mat<4, 4, T, Q> const& proj, vec<4, U, Q> const& viewport); /// Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates. /// The near and far clip planes correspond to z normalized device coordinates of -1 and +1 respectively. (OpenGL clip volume definition) - /// + /// /// @param obj Specify the object coordinates. /// @param model Specifies the current modelview matrix /// @param proj Specifies the current projection matrix @@ -605,14 +605,14 @@ namespace glm /// @tparam T Native type used for the computation. Currently supported: half (not recommanded), float or double. /// @tparam U Currently supported: Floating-point types and integer types. /// @see gtc_matrix_transform - /// @see gluProject man page + /// @see gluProject man page template GLM_FUNC_DECL vec<3, T, Q> projectNO( vec<3, T, Q> const& obj, mat<4, 4, T, Q> const& model, mat<4, 4, T, Q> const& proj, vec<4, U, Q> const& viewport); /// Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates using default near and far clip planes definition. /// To change default near and far clip planes definition use GLM_FORCE_DEPTH_ZERO_TO_ONE. - /// + /// /// @param obj Specify the object coordinates. /// @param model Specifies the current modelview matrix /// @param proj Specifies the current projection matrix @@ -621,7 +621,7 @@ namespace glm /// @tparam T Native type used for the computation. Currently supported: half (not recommanded), float or double. /// @tparam U Currently supported: Floating-point types and integer types. /// @see gtc_matrix_transform - /// @see gluProject man page + /// @see gluProject man page template GLM_FUNC_DECL vec<3, T, Q> project( vec<3, T, Q> const& obj, mat<4, 4, T, Q> const& model, mat<4, 4, T, Q> const& proj, vec<4, U, Q> const& viewport); @@ -637,7 +637,7 @@ namespace glm /// @tparam T Native type used for the computation. Currently supported: half (not recommanded), float or double. /// @tparam U Currently supported: Floating-point types and integer types. /// @see gtc_matrix_transform - /// @see gluUnProject man page + /// @see gluUnProject man page template GLM_FUNC_DECL vec<3, T, Q> unProjectZO( vec<3, T, Q> const& win, mat<4, 4, T, Q> const& model, mat<4, 4, T, Q> const& proj, vec<4, U, Q> const& viewport); @@ -653,7 +653,7 @@ namespace glm /// @tparam T Native type used for the computation. Currently supported: half (not recommanded), float or double. /// @tparam U Currently supported: Floating-point types and integer types. /// @see gtc_matrix_transform - /// @see gluUnProject man page + /// @see gluUnProject man page template GLM_FUNC_DECL vec<3, T, Q> unProjectNO( vec<3, T, Q> const& win, mat<4, 4, T, Q> const& model, mat<4, 4, T, Q> const& proj, vec<4, U, Q> const& viewport); @@ -669,7 +669,7 @@ namespace glm /// @tparam T Native type used for the computation. Currently supported: half (not recommanded), float or double. /// @tparam U Currently supported: Floating-point types and integer types. /// @see gtc_matrix_transform - /// @see gluUnProject man page + /// @see gluUnProject man page template GLM_FUNC_DECL vec<3, T, Q> unProject( vec<3, T, Q> const& win, mat<4, 4, T, Q> const& model, mat<4, 4, T, Q> const& proj, vec<4, U, Q> const& viewport); @@ -682,7 +682,7 @@ namespace glm /// @tparam T Native type used for the computation. Currently supported: half (not recommanded), float or double. /// @tparam U Currently supported: Floating-point types and integer types. /// @see gtc_matrix_transform - /// @see gluPickMatrix man page + /// @see gluPickMatrix man page template GLM_FUNC_DECL mat<4, 4, T, Q> pickMatrix( vec<2, T, Q> const& center, vec<2, T, Q> const& delta, vec<4, U, Q> const& viewport); @@ -716,7 +716,7 @@ namespace glm /// @param up Normalized up vector, how the camera is oriented. Typically (0, 0, 1) /// @see gtc_matrix_transform /// @see - frustum(T const& left, T const& right, T const& bottom, T const& top, T const& nearVal, T const& farVal) frustum(T const& left, T const& right, T const& bottom, T const& top, T const& nearVal, T const& farVal) - /// @see gluLookAt man page + /// @see gluLookAt man page template GLM_FUNC_DECL mat<4, 4, T, Q> lookAt( vec<3, T, Q> const& eye, vec<3, T, Q> const& center, vec<3, T, Q> const& up); diff --git a/glm/gtc/matrix_transform.inl b/glm/gtc/matrix_transform.inl index 39b15a69..12623d79 100644 --- a/glm/gtc/matrix_transform.inl +++ b/glm/gtc/matrix_transform.inl @@ -14,7 +14,7 @@ namespace glm Result[3] = m[0] * v[0] + m[1] * v[1] + m[2] * v[2] + m[3]; return Result; } - + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> rotate(mat<4, 4, T, Q> const& m, T angle, vec<3, T, Q> const& v) { @@ -45,7 +45,7 @@ namespace glm Result[3] = m[3]; return Result; } - + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> rotate_slow(mat<4, 4, T, Q> const& m, T angle, vec<3, T, Q> const& v) { @@ -361,7 +361,7 @@ namespace glm assert(abs(aspect - std::numeric_limits::epsilon()) > static_cast(0)); T const tanHalfFovy = tan(fovy / static_cast(2)); - + mat<4, 4, T, defaultp> Result(static_cast(0)); Result[0][0] = static_cast(1) / (aspect * tanHalfFovy); Result[1][1] = static_cast(1) / (tanHalfFovy); @@ -377,7 +377,7 @@ namespace glm assert(abs(aspect - std::numeric_limits::epsilon()) > static_cast(0)); T const tanHalfFovy = tan(fovy / static_cast(2)); - + mat<4, 4, T, defaultp> Result(static_cast(0)); Result[0][0] = static_cast(1) / (aspect * tanHalfFovy); Result[1][1] = static_cast(1) / (tanHalfFovy); @@ -447,7 +447,7 @@ namespace glm assert(width > static_cast(0)); assert(height > static_cast(0)); assert(fov > static_cast(0)); - + T const rad = fov; T const h = glm::cos(static_cast(0.5) * rad) / glm::sin(static_cast(0.5) * rad); T const w = h * height / width; ///todo max(width , Height) / min(width , Height)? @@ -467,7 +467,7 @@ namespace glm assert(width > static_cast(0)); assert(height > static_cast(0)); assert(fov > static_cast(0)); - + T const rad = fov; T const h = glm::cos(static_cast(0.5) * rad) / glm::sin(static_cast(0.5) * rad); T const w = h * height / width; ///todo max(width , Height) / min(width , Height)? @@ -487,7 +487,7 @@ namespace glm assert(width > static_cast(0)); assert(height > static_cast(0)); assert(fov > static_cast(0)); - + T const rad = fov; T const h = glm::cos(static_cast(0.5) * rad) / glm::sin(static_cast(0.5) * rad); T const w = h * height / width; ///todo max(width , Height) / min(width , Height)? @@ -507,7 +507,7 @@ namespace glm assert(width > static_cast(0)); assert(height > static_cast(0)); assert(fov > static_cast(0)); - + T const rad = fov; T const h = glm::cos(static_cast(0.5) * rad) / glm::sin(static_cast(0.5) * rad); T const w = h * height / width; ///todo max(width , Height) / min(width , Height)? @@ -625,7 +625,7 @@ namespace glm template GLM_FUNC_QUALIFIER mat<4, 4, T, defaultp> tweakedInfinitePerspective(T fovy, T aspect, T zNear, T ep) { - T const range = tan(fovy / static_cast(2)) * zNear; + T const range = tan(fovy / static_cast(2)) * zNear; T const left = -range * aspect; T const right = range * aspect; T const bottom = -range; diff --git a/glm/gtc/noise.hpp b/glm/gtc/noise.hpp index b4a33bb6..7b1ca40d 100644 --- a/glm/gtc/noise.hpp +++ b/glm/gtc/noise.hpp @@ -8,10 +8,10 @@ /// /// Include to use the features of this extension. /// -/// Defines 2D, 3D and 4D procedural noise functions -/// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise": -/// https://github.com/ashima/webgl-noise -/// Following Stefan Gustavson's paper "Simplex noise demystified": +/// Defines 2D, 3D and 4D procedural noise functions +/// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise": +/// https://github.com/ashima/webgl-noise +/// Following Stefan Gustavson's paper "Simplex noise demystified": /// http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf #pragma once @@ -41,7 +41,7 @@ namespace glm template GLM_FUNC_DECL T perlin( vec const& p); - + /// Periodic perlin noise. /// @see gtc_noise template diff --git a/glm/gtc/noise.inl b/glm/gtc/noise.inl index 9b4ed79b..00a80ab0 100644 --- a/glm/gtc/noise.inl +++ b/glm/gtc/noise.inl @@ -1,9 +1,9 @@ /// @ref gtc_noise /// @file glm/gtc/noise.inl /// -// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise": -// https://github.com/ashima/webgl-noise -// Following Stefan Gustavson's paper "Simplex noise demystified": +// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise": +// https://github.com/ashima/webgl-noise +// Following Stefan Gustavson's paper "Simplex noise demystified": // http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf namespace glm{ @@ -15,7 +15,7 @@ namespace gtc vec<3, T, Q> pXYZ = floor(fract(vec<3, T, Q>(j) * vec<3, T, Q>(ip)) * T(7)) * ip[2] - T(1); T pW = static_cast(1.5) - dot(abs(pXYZ), vec<3, T, Q>(1)); vec<4, T, Q> s = vec<4, T, Q>(lessThan(vec<4, T, Q>(pXYZ, pW), vec<4, T, Q>(0.0))); - pXYZ = pXYZ + (vec<3, T, Q>(s) * T(2) - T(1)) * s.w; + pXYZ = pXYZ + (vec<3, T, Q>(s) * T(2) - T(1)) * s.w; return vec<4, T, Q>(pXYZ, pW); } }//namespace gtc @@ -128,7 +128,7 @@ namespace gtc vec<3, T, Q> fade_xyz = detail::fade(Pf0); vec<4, T, Q> n_z = mix(vec<4, T, Q>(n000, n100, n010, n110), vec<4, T, Q>(n001, n101, n011, n111), fade_xyz.z); vec<2, T, Q> n_yz = mix(vec<2, T, Q>(n_z.x, n_z.y), vec<2, T, Q>(n_z.z, n_z.w), fade_xyz.y); - T n_xyz = mix(n_yz.x, n_yz.y, fade_xyz.x); + T n_xyz = mix(n_yz.x, n_yz.y, fade_xyz.x); return T(2.2) * n_xyz; } /* @@ -199,9 +199,9 @@ namespace gtc vec<3, T, Q> fade_xyz = fade(Pf0); vec<4, T, Q> n_z = mix(vec<4, T, Q>(n000, n100, n010, n110), vec<4, T, Q>(n001, n101, n011, n111), fade_xyz.z); vec<2, T, Q> n_yz = mix( - vec<2, T, Q>(n_z.x, n_z.y), + vec<2, T, Q>(n_z.x, n_z.y), vec<2, T, Q>(n_z.z, n_z.w), fade_xyz.y); - T n_xyz = mix(n_yz.x, n_yz.y, fade_xyz.x); + T n_xyz = mix(n_yz.x, n_yz.y, fade_xyz.x); return T(2.2) * n_xyz; } */ @@ -619,7 +619,7 @@ namespace gtc vec<3, T, Q> m = max(vec<3, T, Q>(0.5) - vec<3, T, Q>( dot(x0, x0), - dot(vec<2, T, Q>(x12.x, x12.y), vec<2, T, Q>(x12.x, x12.y)), + dot(vec<2, T, Q>(x12.x, x12.y), vec<2, T, Q>(x12.x, x12.y)), dot(vec<2, T, Q>(x12.z, x12.w), vec<2, T, Q>(x12.z, x12.w))), vec<3, T, Q>(0)); m = m * m ; m = m * m ; @@ -770,7 +770,7 @@ namespace gtc vec<4, T, Q> x4 = x0 + C.w; // Permutations - i = mod(i, vec<4, T, Q>(289)); + i = mod(i, vec<4, T, Q>(289)); T j0 = detail::permute(detail::permute(detail::permute(detail::permute(i.w) + i.z) + i.y) + i.x); vec<4, T, Q> j1 = detail::permute(detail::permute(detail::permute(detail::permute( i.w + vec<4, T, Q>(i1.w, i2.w, i3.w, T(1))) + @@ -801,8 +801,8 @@ namespace gtc vec<2, T, Q> m1 = max(T(0.6) - vec<2, T, Q>(dot(x3, x3), dot(x4, x4) ), vec<2, T, Q>(0)); m0 = m0 * m0; m1 = m1 * m1; - return T(49) * - (dot(m0 * m0, vec<3, T, Q>(dot(p0, x0), dot(p1, x1), dot(p2, x2))) + + return T(49) * + (dot(m0 * m0, vec<3, T, Q>(dot(p0, x0), dot(p1, x1), dot(p2, x2))) + dot(m1 * m1, vec<2, T, Q>(dot(p3, x3), dot(p4, x4)))); } }//namespace glm diff --git a/glm/gtc/packing.hpp b/glm/gtc/packing.hpp index ebc80b56..96070c24 100644 --- a/glm/gtc/packing.hpp +++ b/glm/gtc/packing.hpp @@ -39,10 +39,10 @@ namespace glm GLM_FUNC_DECL uint8 packUnorm1x8(float v); /// Convert a single 8-bit integer to a normalized floating-point value. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackUnorm4x8: f / 255.0 - /// + /// /// @see gtc_packing /// @see vec2 unpackUnorm2x8(uint16 p) /// @see vec4 unpackUnorm4x8(uint32 p) @@ -66,22 +66,22 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint16 packUnorm2x8(vec2 const& v); - /// First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit unsigned integers. + /// First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit unsigned integers. /// Then, each component is converted to a normalized floating-point value to generate the returned two-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackUnorm4x8: f / 255.0 - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see float unpackUnorm1x8(uint8 v) /// @see vec4 unpackUnorm4x8(uint32 p) /// @see GLSL unpackUnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec2 unpackUnorm2x8(uint16 p); - + /// First, converts the normalized floating-point value v into 8-bit integer value. /// Then, the results are packed into the returned 8-bit unsigned integer. /// @@ -95,19 +95,19 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint8 packSnorm1x8(float s); - /// First, unpacks a single 8-bit unsigned integer p into a single 8-bit signed integers. + /// First, unpacks a single 8-bit unsigned integer p into a single 8-bit signed integers. /// Then, the value is converted to a normalized floating-point value to generate the returned scalar. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm1x8: clamp(f / 127.0, -1, +1) - /// + /// /// @see gtc_packing /// @see vec2 unpackSnorm2x8(uint16 p) /// @see vec4 unpackSnorm4x8(uint32 p) /// @see GLSL unpackSnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL float unpackSnorm1x8(uint8 p); - + /// First, converts each component of the normalized floating-point value v into 8-bit integer values. /// Then, the results are packed into the returned 16-bit unsigned integer. /// @@ -124,22 +124,22 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint16 packSnorm2x8(vec2 const& v); - /// First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit signed integers. + /// First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned two-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm2x8: clamp(f / 127.0, -1, +1) - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see float unpackSnorm1x8(uint8 p) /// @see vec4 unpackSnorm4x8(uint32 p) /// @see GLSL unpackSnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec2 unpackSnorm2x8(uint16 p); - + /// First, converts the normalized floating-point value v into a 16-bit integer value. /// Then, the results are packed into the returned 16-bit unsigned integer. /// @@ -153,12 +153,12 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint16 packUnorm1x16(float v); - /// First, unpacks a single 16-bit unsigned integer p into a of 16-bit unsigned integers. + /// First, unpacks a single 16-bit unsigned integer p into a of 16-bit unsigned integers. /// Then, the value is converted to a normalized floating-point value to generate the returned scalar. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: - /// unpackUnorm1x16: f / 65535.0 - /// + /// unpackUnorm1x16: f / 65535.0 + /// /// @see gtc_packing /// @see vec2 unpackUnorm2x16(uint32 p) /// @see vec4 unpackUnorm4x16(uint64 p) @@ -182,15 +182,15 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint64 packUnorm4x16(vec4 const& v); - /// First, unpacks a single 64-bit unsigned integer p into four 16-bit unsigned integers. + /// First, unpacks a single 64-bit unsigned integer p into four 16-bit unsigned integers. /// Then, each component is converted to a normalized floating-point value to generate the returned four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: - /// unpackUnormx4x16: f / 65535.0 - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// unpackUnormx4x16: f / 65535.0 + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see float unpackUnorm1x16(uint16 p) /// @see vec2 unpackUnorm2x16(uint32 p) @@ -211,12 +211,12 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint16 packSnorm1x16(float v); - /// First, unpacks a single 16-bit unsigned integer p into a single 16-bit signed integers. + /// First, unpacks a single 16-bit unsigned integer p into a single 16-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned scalar. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm1x16: clamp(f / 32767.0, -1, +1) - /// + /// /// @see gtc_packing /// @see vec2 unpackSnorm2x16(uint32 p) /// @see vec4 unpackSnorm4x16(uint64 p) @@ -240,22 +240,22 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint64 packSnorm4x16(vec4 const& v); - /// First, unpacks a single 64-bit unsigned integer p into four 16-bit signed integers. + /// First, unpacks a single 64-bit unsigned integer p into four 16-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm4x16: clamp(f / 32767.0, -1, +1) - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see float unpackSnorm1x16(uint16 p) /// @see vec2 unpackSnorm2x16(uint32 p) /// @see GLSL unpackSnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec4 unpackSnorm4x16(uint64 p); - + /// Returns an unsigned integer obtained by converting the components of a floating-point scalar /// to the 16-bit floating-point representation found in the OpenGL Specification, /// and then packing this 16-bit value into a 16-bit unsigned integer. @@ -266,7 +266,7 @@ namespace glm /// @see GLSL packHalf2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint16 packHalf1x16(float v); - + /// Returns a floating-point scalar with components obtained by unpacking a 16-bit unsigned integer into a 16-bit value, /// interpreted as a 16-bit floating-point number according to the OpenGL Specification, /// and converting it to 32-bit floating-point values. @@ -278,25 +278,25 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL float unpackHalf1x16(uint16 v); - /// Returns an unsigned integer obtained by converting the components of a four-component floating-point vector - /// to the 16-bit floating-point representation found in the OpenGL Specification, + /// Returns an unsigned integer obtained by converting the components of a four-component floating-point vector + /// to the 16-bit floating-point representation found in the OpenGL Specification, /// and then packing these four 16-bit values into a 64-bit unsigned integer. - /// The first vector component specifies the 16 least-significant bits of the result; + /// The first vector component specifies the 16 least-significant bits of the result; /// the forth component specifies the 16 most-significant bits. - /// + /// /// @see gtc_packing /// @see uint16 packHalf1x16(float const& v) /// @see uint32 packHalf2x16(vec2 const& v) /// @see GLSL packHalf2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint64 packHalf4x16(vec4 const& v); - + /// Returns a four-component floating-point vector with components obtained by unpacking a 64-bit unsigned integer into four 16-bit values, - /// interpreting those values as 16-bit floating-point numbers according to the OpenGL Specification, + /// interpreting those values as 16-bit floating-point numbers according to the OpenGL Specification, /// and converting them to 32-bit floating-point values. - /// The first component of the vector is obtained from the 16 least-significant bits of v; + /// The first component of the vector is obtained from the 16 least-significant bits of v; /// the forth component is obtained from the 16 most-significant bits of v. - /// + /// /// @see gtc_packing /// @see float unpackHalf1x16(uint16 const& v) /// @see vec2 unpackHalf2x16(uint32 const& v) @@ -304,12 +304,12 @@ namespace glm /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec4 unpackHalf4x16(uint64 p); - /// Returns an unsigned integer obtained by converting the components of a four-component signed integer vector - /// to the 10-10-10-2-bit signed integer representation found in the OpenGL Specification, + /// Returns an unsigned integer obtained by converting the components of a four-component signed integer vector + /// to the 10-10-10-2-bit signed integer representation found in the OpenGL Specification, /// and then packing these four values into a 32-bit unsigned integer. - /// The first vector component specifies the 10 least-significant bits of the result; + /// The first vector component specifies the 10 least-significant bits of the result; /// the forth component specifies the 2 most-significant bits. - /// + /// /// @see gtc_packing /// @see uint32 packI3x10_1x2(uvec4 const& v) /// @see uint32 packSnorm3x10_1x2(vec4 const& v) @@ -317,23 +317,23 @@ namespace glm /// @see ivec4 unpackI3x10_1x2(uint32 const& p) GLM_FUNC_DECL uint32 packI3x10_1x2(ivec4 const& v); - /// Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit signed integers. - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit signed integers. + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see uint32 packU3x10_1x2(uvec4 const& v) /// @see vec4 unpackSnorm3x10_1x2(uint32 const& p); /// @see uvec4 unpackI3x10_1x2(uint32 const& p); GLM_FUNC_DECL ivec4 unpackI3x10_1x2(uint32 p); - /// Returns an unsigned integer obtained by converting the components of a four-component unsigned integer vector - /// to the 10-10-10-2-bit unsigned integer representation found in the OpenGL Specification, + /// Returns an unsigned integer obtained by converting the components of a four-component unsigned integer vector + /// to the 10-10-10-2-bit unsigned integer representation found in the OpenGL Specification, /// and then packing these four values into a 32-bit unsigned integer. - /// The first vector component specifies the 10 least-significant bits of the result; + /// The first vector component specifies the 10 least-significant bits of the result; /// the forth component specifies the 2 most-significant bits. - /// + /// /// @see gtc_packing /// @see uint32 packI3x10_1x2(ivec4 const& v) /// @see uint32 packSnorm3x10_1x2(vec4 const& v) @@ -341,11 +341,11 @@ namespace glm /// @see ivec4 unpackU3x10_1x2(uint32 const& p) GLM_FUNC_DECL uint32 packU3x10_1x2(uvec4 const& v); - /// Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit unsigned integers. - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit unsigned integers. + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see uint32 packU3x10_1x2(uvec4 const& v) /// @see vec4 unpackSnorm3x10_1x2(uint32 const& p); @@ -360,7 +360,7 @@ namespace glm /// packSnorm3x10_1x2(xyz): round(clamp(c, -1, +1) * 511.0) /// packSnorm3x10_1x2(w): round(clamp(c, -1, +1) * 1.0) /// - /// The first vector component specifies the 10 least-significant bits of the result; + /// The first vector component specifies the 10 least-significant bits of the result; /// the forth component specifies the 2 most-significant bits. /// /// @see gtc_packing @@ -370,16 +370,16 @@ namespace glm /// @see uint32 packI3x10_1x2(ivec4 const& v) GLM_FUNC_DECL uint32 packSnorm3x10_1x2(vec4 const& v); - /// First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers. + /// First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm3x10_1x2(xyz): clamp(f / 511.0, -1, +1) /// unpackSnorm3x10_1x2(w): clamp(f / 511.0, -1, +1) - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see uint32 packSnorm3x10_1x2(vec4 const& v) /// @see vec4 unpackUnorm3x10_1x2(uint32 const& p)) @@ -395,7 +395,7 @@ namespace glm /// packUnorm3x10_1x2(xyz): round(clamp(c, 0, +1) * 1023.0) /// packUnorm3x10_1x2(w): round(clamp(c, 0, +1) * 3.0) /// - /// The first vector component specifies the 10 least-significant bits of the result; + /// The first vector component specifies the 10 least-significant bits of the result; /// the forth component specifies the 2 most-significant bits. /// /// @see gtc_packing @@ -405,16 +405,16 @@ namespace glm /// @see uint32 packI3x10_1x2(ivec4 const& v) GLM_FUNC_DECL uint32 packUnorm3x10_1x2(vec4 const& v); - /// First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers. + /// First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm3x10_1x2(xyz): clamp(f / 1023.0, 0, +1) /// unpackSnorm3x10_1x2(w): clamp(f / 3.0, 0, +1) - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see uint32 packSnorm3x10_1x2(vec4 const& v) /// @see vec4 unpackInorm3x10_1x2(uint32 const& p)) @@ -426,19 +426,19 @@ namespace glm /// Then, converts the third component of the normalized floating-point value v into a 10-bit signless floating-point value. /// Then, the results are packed into the returned 32-bit unsigned integer. /// - /// The first vector component specifies the 11 least-significant bits of the result; + /// The first vector component specifies the 11 least-significant bits of the result; /// the last component specifies the 10 most-significant bits. /// /// @see gtc_packing /// @see vec3 unpackF2x11_1x10(uint32 const& p) GLM_FUNC_DECL uint32 packF2x11_1x10(vec3 const& v); - /// First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and one 10-bit signless floating-point value . + /// First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and one 10-bit signless floating-point value . /// Then, each component is converted to a normalized floating-point value to generate the returned three-component vector. - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see gtc_packing /// @see uint32 packF2x11_1x10(vec3 const& v) GLM_FUNC_DECL vec3 unpackF2x11_1x10(uint32 p); @@ -448,7 +448,7 @@ namespace glm /// Then, converts the third component of the normalized floating-point value v into a 10-bit signless floating-point value. /// Then, the results are packed into the returned 32-bit unsigned integer. /// - /// The first vector component specifies the 11 least-significant bits of the result; + /// The first vector component specifies the 11 least-significant bits of the result; /// the last component specifies the 10 most-significant bits. /// /// packF3x9_E1x5 allows encoding into RGBE / RGB9E5 format @@ -457,10 +457,10 @@ namespace glm /// @see vec3 unpackF3x9_E1x5(uint32 const& p) GLM_FUNC_DECL uint32 packF3x9_E1x5(vec3 const& v); - /// First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and one 10-bit signless floating-point value . + /// First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and one 10-bit signless floating-point value . /// Then, each component is converted to a normalized floating-point value to generate the returned three-component vector. - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. /// /// unpackF3x9_E1x5 allows decoding RGBE / RGB9E5 data @@ -471,9 +471,9 @@ namespace glm /// Returns an unsigned integer vector obtained by converting the components of a floating-point vector /// to the 16-bit floating-point representation found in the OpenGL Specification. - /// The first vector component specifies the 16 least-significant bits of the result; + /// The first vector component specifies the 16 least-significant bits of the result; /// the forth component specifies the 16 most-significant bits. - /// + /// /// @see gtc_packing /// @see vec<3, T, Q> unpackRGBM(vec<4, T, Q> const& p) /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions @@ -483,7 +483,7 @@ namespace glm /// Returns a floating-point vector with components obtained by reinterpreting an integer vector as 16-bit floating-point numbers and converting them to 32-bit floating-point values. /// The first component of the vector is obtained from the 16 least-significant bits of v; /// the forth component is obtained from the 16 most-significant bits of v. - /// + /// /// @see gtc_packing /// @see vec<4, T, Q> packRGBM(vec<3, float, Q> const& v) /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions @@ -492,9 +492,9 @@ namespace glm /// Returns an unsigned integer vector obtained by converting the components of a floating-point vector /// to the 16-bit floating-point representation found in the OpenGL Specification. - /// The first vector component specifies the 16 least-significant bits of the result; + /// The first vector component specifies the 16 least-significant bits of the result; /// the forth component specifies the 16 most-significant bits. - /// + /// /// @see gtc_packing /// @see vec unpackHalf(vec const& p) /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions @@ -504,7 +504,7 @@ namespace glm /// Returns a floating-point vector with components obtained by reinterpreting an integer vector as 16-bit floating-point numbers and converting them to 32-bit floating-point values. /// The first component of the vector is obtained from the 16 least-significant bits of v; /// the forth component is obtained from the 16 most-significant bits of v. - /// + /// /// @see gtc_packing /// @see vec packHalf(vec const& v) /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions @@ -519,7 +519,7 @@ namespace glm GLM_FUNC_DECL vec packUnorm(vec const& v); /// Convert a packed integer to a normalized floating-point vector. - /// + /// /// @see gtc_packing /// @see vec packUnorm(vec const& v) template @@ -533,7 +533,7 @@ namespace glm GLM_FUNC_DECL vec packSnorm(vec const& v); /// Convert a packed integer to a normalized floating-point vector. - /// + /// /// @see gtc_packing /// @see vec packSnorm(vec const& v) template @@ -546,7 +546,7 @@ namespace glm GLM_FUNC_DECL uint8 packUnorm2x4(vec2 const& v); /// Convert a packed integer to a normalized floating-point vector. - /// + /// /// @see gtc_packing /// @see uint8 packUnorm2x4(vec2 const& v) GLM_FUNC_DECL vec2 unpackUnorm2x4(uint8 p); @@ -558,7 +558,7 @@ namespace glm GLM_FUNC_DECL uint16 packUnorm4x4(vec4 const& v); /// Convert a packed integer to a normalized floating-point vector. - /// + /// /// @see gtc_packing /// @see uint16 packUnorm4x4(vec4 const& v) GLM_FUNC_DECL vec4 unpackUnorm4x4(uint16 p); @@ -570,7 +570,7 @@ namespace glm GLM_FUNC_DECL uint16 packUnorm1x5_1x6_1x5(vec3 const& v); /// Convert a packed integer to a normalized floating-point vector. - /// + /// /// @see gtc_packing /// @see uint16 packUnorm1x5_1x6_1x5(vec3 const& v) GLM_FUNC_DECL vec3 unpackUnorm1x5_1x6_1x5(uint16 p); @@ -582,7 +582,7 @@ namespace glm GLM_FUNC_DECL uint16 packUnorm3x5_1x1(vec4 const& v); /// Convert a packed integer to a normalized floating-point vector. - /// + /// /// @see gtc_packing /// @see uint16 packUnorm3x5_1x1(vec4 const& v) GLM_FUNC_DECL vec4 unpackUnorm3x5_1x1(uint16 p); @@ -594,7 +594,7 @@ namespace glm GLM_FUNC_DECL uint8 packUnorm2x3_1x2(vec3 const& v); /// Convert a packed integer to a normalized floating-point vector. - /// + /// /// @see gtc_packing /// @see uint8 packUnorm2x3_1x2(vec3 const& v) GLM_FUNC_DECL vec3 unpackUnorm2x3_1x2(uint8 p); @@ -608,7 +608,7 @@ namespace glm GLM_FUNC_DECL int16 packInt2x8(i8vec2 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see int16 packInt2x8(i8vec2 const& v) GLM_FUNC_DECL i8vec2 unpackInt2x8(int16 p); @@ -620,7 +620,7 @@ namespace glm GLM_FUNC_DECL uint16 packUint2x8(u8vec2 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see uint16 packInt2x8(u8vec2 const& v) GLM_FUNC_DECL u8vec2 unpackUint2x8(uint16 p); @@ -632,7 +632,7 @@ namespace glm GLM_FUNC_DECL int32 packInt4x8(i8vec4 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see int32 packInt2x8(i8vec4 const& v) GLM_FUNC_DECL i8vec4 unpackInt4x8(int32 p); @@ -644,7 +644,7 @@ namespace glm GLM_FUNC_DECL uint32 packUint4x8(u8vec4 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see uint32 packUint4x8(u8vec2 const& v) GLM_FUNC_DECL u8vec4 unpackUint4x8(uint32 p); @@ -656,7 +656,7 @@ namespace glm GLM_FUNC_DECL int packInt2x16(i16vec2 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see int packInt2x16(i16vec2 const& v) GLM_FUNC_DECL i16vec2 unpackInt2x16(int p); @@ -668,7 +668,7 @@ namespace glm GLM_FUNC_DECL int64 packInt4x16(i16vec4 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see int64 packInt4x16(i16vec4 const& v) GLM_FUNC_DECL i16vec4 unpackInt4x16(int64 p); @@ -680,7 +680,7 @@ namespace glm GLM_FUNC_DECL uint packUint2x16(u16vec2 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see uint packUint2x16(u16vec2 const& v) GLM_FUNC_DECL u16vec2 unpackUint2x16(uint p); @@ -692,7 +692,7 @@ namespace glm GLM_FUNC_DECL uint64 packUint4x16(u16vec4 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see uint64 packUint4x16(u16vec4 const& v) GLM_FUNC_DECL u16vec4 unpackUint4x16(uint64 p); @@ -704,7 +704,7 @@ namespace glm GLM_FUNC_DECL int64 packInt2x32(i32vec2 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see int packInt2x16(i32vec2 const& v) GLM_FUNC_DECL i32vec2 unpackInt2x32(int64 p); @@ -716,7 +716,7 @@ namespace glm GLM_FUNC_DECL uint64 packUint2x32(u32vec2 const& v); /// Convert a packed integer into an integer vector. - /// + /// /// @see gtc_packing /// @see int packUint2x16(u32vec2 const& v) GLM_FUNC_DECL u32vec2 unpackUint2x32(uint64 p); diff --git a/glm/gtc/packing.inl b/glm/gtc/packing.inl index 39031b32..c12c1409 100644 --- a/glm/gtc/packing.inl +++ b/glm/gtc/packing.inl @@ -356,13 +356,13 @@ namespace detail { return static_cast(round(clamp(v, 0.0f, 1.0f) * 255.0f)); } - + GLM_FUNC_QUALIFIER float unpackUnorm1x8(uint8 p) { float const Unpack(p); return Unpack * static_cast(0.0039215686274509803921568627451); // 1 / 255 } - + GLM_FUNC_QUALIFIER uint16 packUnorm2x8(vec2 const& v) { u8vec2 const Topack(round(clamp(v, 0.0f, 1.0f) * 255.0f)); @@ -371,7 +371,7 @@ namespace detail memcpy(&Unpack, &Topack, sizeof(Unpack)); return Unpack; } - + GLM_FUNC_QUALIFIER vec2 unpackUnorm2x8(uint16 p) { u8vec2 Unpack; @@ -386,7 +386,7 @@ namespace detail memcpy(&Packed, &Topack, sizeof(Packed)); return Packed; } - + GLM_FUNC_QUALIFIER float unpackSnorm1x8(uint8 p) { int8 Unpack = 0; @@ -395,7 +395,7 @@ namespace detail static_cast(Unpack) * 0.00787401574803149606299212598425f, // 1.0f / 127.0f -1.0f, 1.0f); } - + GLM_FUNC_QUALIFIER uint16 packSnorm2x8(vec2 const& v) { i8vec2 const Topack(round(clamp(v, -1.0f, 1.0f) * 127.0f)); @@ -403,7 +403,7 @@ namespace detail memcpy(&Packed, &Topack, sizeof(Packed)); return Packed; } - + GLM_FUNC_QUALIFIER vec2 unpackSnorm2x8(uint16 p) { i8vec2 Unpack; @@ -452,7 +452,7 @@ namespace detail int16 Unpack = 0; memcpy(&Unpack, &p, sizeof(Unpack)); return clamp( - static_cast(Unpack) * 3.0518509475997192297128208258309e-5f, //1.0f / 32767.0f, + static_cast(Unpack) * 3.0518509475997192297128208258309e-5f, //1.0f / 32767.0f, -1.0f, 1.0f); } @@ -518,7 +518,7 @@ namespace detail Result.data.y = v.y; Result.data.z = v.z; Result.data.w = v.w; - return Result.pack; + return Result.pack; } GLM_FUNC_QUALIFIER ivec4 unpackI3x10_1x2(uint32 v) @@ -539,7 +539,7 @@ namespace detail Result.data.y = v.y; Result.data.z = v.z; Result.data.w = v.w; - return Result.pack; + return Result.pack; } GLM_FUNC_QUALIFIER uvec4 unpackU3x10_1x2(uint32 v) diff --git a/glm/gtc/quaternion.hpp b/glm/gtc/quaternion.hpp index 507cf3d4..5f0e56dc 100644 --- a/glm/gtc/quaternion.hpp +++ b/glm/gtc/quaternion.hpp @@ -49,13 +49,13 @@ namespace glm # pragma clang diagnostic ignored "-Wgnu-anonymous-struct" # pragma clang diagnostic ignored "-Wnested-anon-types" # endif - + union { struct { T x, y, z, w;}; typename detail::storage::value>::type data; }; - + # if GLM_COMPILER & GLM_COMPILER_CLANG # pragma clang diagnostic pop # endif @@ -178,7 +178,7 @@ namespace glm GLM_FUNC_DECL bool operator!=(tquat const& q1, tquat const& q2); /// Returns the length of the quaternion. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -186,15 +186,15 @@ namespace glm GLM_FUNC_DECL T length(tquat const& q); /// Returns the normalized quaternion. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion template GLM_FUNC_DECL tquat normalize(tquat const& q); - + /// Returns dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ... - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -204,7 +204,7 @@ namespace glm /// 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. - /// + /// /// @param x A quaternion /// @param y A quaternion /// @param a Interpolation factor. The interpolation is defined beyond the range [0, 1]. @@ -217,7 +217,7 @@ namespace glm /// Linear interpolation of two quaternions. /// The interpolation is oriented. - /// + /// /// @param x A quaternion /// @param y A quaternion /// @param a Interpolation factor. The interpolation is defined in the range [0, 1]. @@ -229,7 +229,7 @@ namespace glm /// Spherical linear interpolation of two quaternions. /// The interpolation always take the short path and the rotation is performed at constant speed. - /// + /// /// @param x A quaternion /// @param y A quaternion /// @param a Interpolation factor. The interpolation is defined beyond the range [0, 1]. @@ -240,7 +240,7 @@ namespace glm GLM_FUNC_DECL tquat slerp(tquat const& x, tquat const& y, T a); /// Returns the q conjugate. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -248,7 +248,7 @@ namespace glm GLM_FUNC_DECL tquat conjugate(tquat const& q); /// Returns the q inverse. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -256,7 +256,7 @@ namespace glm GLM_FUNC_DECL tquat inverse(tquat const& q); /// Rotates a quaternion from a vector of 3 components axis and an angle. - /// + /// /// @param q Source orientation /// @param angle Angle expressed in radians. /// @param axis Axis of the rotation @@ -300,7 +300,7 @@ namespace glm GLM_FUNC_DECL T yaw(tquat const& x); /// Converts a quaternion to a 3 * 3 matrix. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -308,7 +308,7 @@ namespace glm GLM_FUNC_DECL mat<3, 3, T, Q> mat3_cast(tquat const& x); /// Converts a quaternion to a 4 * 4 matrix. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -316,7 +316,7 @@ namespace glm GLM_FUNC_DECL mat<4, 4, T, Q> mat4_cast(tquat const& x); /// Converts a 3 * 3 matrix to a quaternion. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -324,7 +324,7 @@ namespace glm GLM_FUNC_DECL tquat quat_cast(mat<3, 3, T, Q> const& x); /// Converts a 4 * 4 matrix to a quaternion. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -358,7 +358,7 @@ namespace glm GLM_FUNC_DECL tquat angleAxis(T const& angle, vec<3, T, Q> const& axis); /// Returns the component-wise comparison result of x < y. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -398,7 +398,7 @@ namespace glm GLM_FUNC_DECL vec<4, bool, Q> equal(tquat const& x, tquat const& y); /// Returns the component-wise comparison of result x != y. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -410,9 +410,9 @@ namespace glm /// floating point representations. Returns false otherwise, /// including for implementations with no NaN /// representations. - /// + /// /// /!\ When using compiler fast math, this function may fail. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion @@ -424,7 +424,7 @@ namespace glm /// set of floating point representations. Returns false /// otherwise, including for implementations with no infinity /// representations. - /// + /// /// @tparam T Floating-point scalar types. /// /// @see gtc_quaternion diff --git a/glm/gtc/quaternion.inl b/glm/gtc/quaternion.inl index 9a9aa66d..a5e2823a 100644 --- a/glm/gtc/quaternion.inl +++ b/glm/gtc/quaternion.inl @@ -127,7 +127,7 @@ namespace detail , w(static_cast(q.w)) {} - //template + //template //GLM_FUNC_QUALIFIER tquat::tquat //( // valType const& pitch, @@ -138,7 +138,7 @@ namespace detail // vec<3, valType> eulerAngle(pitch * valType(0.5), yaw * valType(0.5), roll * valType(0.5)); // vec<3, valType> c = glm::cos(eulerAngle * valType(0.5)); // vec<3, valType> s = glm::sin(eulerAngle * valType(0.5)); - // + // // this->w = c.x * c.y * c.z + s.x * s.y * s.z; // this->x = s.x * c.y * c.z - c.x * s.y * s.z; // this->y = c.x * s.y * c.z + s.x * c.y * s.z; @@ -174,7 +174,7 @@ namespace detail { vec<3, T, Q> c = glm::cos(eulerAngle * T(0.5)); vec<3, T, Q> s = glm::sin(eulerAngle * T(0.5)); - + this->w = c.x * c.y * c.z + s.x * s.y * s.z; this->x = s.x * c.y * c.z - c.x * s.y * s.z; this->y = c.x * s.y * c.z + s.x * c.y * s.z; @@ -199,7 +199,7 @@ namespace detail { return mat3_cast(*this); } - + template GLM_FUNC_QUALIFIER tquat::operator mat<4, 4, T, Q>() { @@ -458,8 +458,8 @@ namespace detail template GLM_FUNC_QUALIFIER tquat mix2 ( - tquat const& x, - tquat const& y, + tquat const& x, + tquat const& y, T const& a ) { @@ -488,7 +488,7 @@ namespace detail if(flip) alpha = -alpha; - + return normalize(beta * x + alpha * y); } */ @@ -533,7 +533,7 @@ namespace detail T cosTheta = dot(x, y); - // If cosTheta < 0, the interpolation will take the long way around the sphere. + // If cosTheta < 0, the interpolation will take the long way around the sphere. // To fix this, one quat must be negated. if (cosTheta < T(0)) { diff --git a/glm/gtc/quaternion_simd.inl b/glm/gtc/quaternion_simd.inl index ae884b31..06ca7b7b 100644 --- a/glm/gtc/quaternion_simd.inl +++ b/glm/gtc/quaternion_simd.inl @@ -176,7 +176,7 @@ namespace detail __m128 const q_swp1 = _mm_shuffle_ps(q.data, q.data, _MM_SHUFFLE(3, 1, 0, 2)); __m128 const v_swp0 = _mm_shuffle_ps(v.data, v.data, _MM_SHUFFLE(3, 0, 2, 1)); __m128 const v_swp1 = _mm_shuffle_ps(v.data, v.data, _MM_SHUFFLE(3, 1, 0, 2)); - + __m128 uv = _mm_sub_ps(_mm_mul_ps(q_swp0, v_swp1), _mm_mul_ps(q_swp1, v_swp0)); __m128 uv_swp0 = _mm_shuffle_ps(uv, uv, _MM_SHUFFLE(3, 0, 2, 1)); __m128 uv_swp1 = _mm_shuffle_ps(uv, uv, _MM_SHUFFLE(3, 1, 0, 2)); diff --git a/glm/gtc/random.hpp b/glm/gtc/random.hpp index fdda8313..9156e434 100644 --- a/glm/gtc/random.hpp +++ b/glm/gtc/random.hpp @@ -25,52 +25,52 @@ namespace glm { /// @addtogroup gtc_random /// @{ - - /// Generate random numbers in the interval [Min, Max], according a linear distribution - /// - /// @param Min Minimum value included in the sampling - /// @param Max Maximum value included in the sampling + + /// Generate random numbers in the interval [Min, Max], according a linear distribution + /// + /// @param Min Minimum value included in the sampling + /// @param Max Maximum value included in the sampling /// @tparam genType Value type. Currently supported: float or double scalars. /// @see gtc_random template GLM_FUNC_DECL genType linearRand(genType Min, genType Max); - /// Generate random numbers in the interval [Min, Max], according a linear distribution - /// - /// @param Min Minimum value included in the sampling - /// @param Max Maximum value included in the sampling + /// Generate random numbers in the interval [Min, Max], according a linear distribution + /// + /// @param Min Minimum value included in the sampling + /// @param Max Maximum value included in the sampling /// @tparam T Value type. Currently supported: float or double. /// /// @see gtc_random template GLM_FUNC_DECL vec linearRand(vec const& Min, vec const& Max); - /// Generate random numbers in the interval [Min, Max], according a gaussian distribution - /// + /// Generate random numbers in the interval [Min, Max], according a gaussian distribution + /// /// @see gtc_random template GLM_FUNC_DECL genType gaussRand(genType Mean, genType Deviation); /// Generate a random 2D vector which coordinates are regulary distributed on a circle of a given radius - /// + /// /// @see gtc_random template GLM_FUNC_DECL vec<2, T, defaultp> circularRand(T Radius); /// Generate a random 3D vector which coordinates are regulary distributed on a sphere of a given radius - /// + /// /// @see gtc_random template GLM_FUNC_DECL vec<3, T, defaultp> sphericalRand(T Radius); /// Generate a random 2D vector which coordinates are regulary distributed within the area of a disk of a given radius - /// + /// /// @see gtc_random template GLM_FUNC_DECL vec<2, T, defaultp> diskRand(T Radius); /// Generate a random 3D vector which coordinates are regulary distributed within the volume of a ball of a given radius - /// + /// /// @see gtc_random template GLM_FUNC_DECL vec<3, T, defaultp> ballRand(T Radius); diff --git a/glm/gtc/random.inl b/glm/gtc/random.inl index e0e7a93f..b1475009 100644 --- a/glm/gtc/random.inl +++ b/glm/gtc/random.inl @@ -157,7 +157,7 @@ namespace detail return (compute_rand::call() % (Max + static_cast(1) - Min)) + Min; } }; - + template struct compute_linearRand { @@ -281,7 +281,7 @@ namespace detail { x1 = linearRand(genType(-1), genType(1)); x2 = linearRand(genType(-1), genType(1)); - + w = x1 * x1 + x2 * x2; } while(w > genType(1)); @@ -296,7 +296,7 @@ namespace detail template GLM_FUNC_QUALIFIER vec<2, T, defaultp> diskRand(T Radius) - { + { vec<2, T, defaultp> Result(T(0)); T LenRadius(T(0)); @@ -317,7 +317,7 @@ namespace detail { vec<3, T, defaultp> Result(T(0)); T LenRadius(T(0)); - + do { Result = linearRand( @@ -326,7 +326,7 @@ namespace detail LenRadius = length(Result); } while(LenRadius > Radius); - + return Result; } diff --git a/glm/gtc/reciprocal.hpp b/glm/gtc/reciprocal.hpp index 848f5c94..1a2e5169 100644 --- a/glm/gtc/reciprocal.hpp +++ b/glm/gtc/reciprocal.hpp @@ -26,105 +26,105 @@ namespace glm /// Secant function. /// hypotenuse / adjacent or 1 / cos(x) - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType sec(genType angle); /// Cosecant function. /// hypotenuse / opposite or 1 / sin(x) - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal - template + template GLM_FUNC_DECL genType csc(genType angle); - + /// Cotangent function. /// adjacent / opposite or 1 / tan(x) - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType cot(genType angle); /// Inverse secant function. - /// + /// /// @return Return an angle expressed in radians. /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType asec(genType x); /// Inverse cosecant function. - /// + /// /// @return Return an angle expressed in radians. /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType acsc(genType x); - + /// Inverse cotangent function. - /// + /// /// @return Return an angle expressed in radians. /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType acot(genType x); /// Secant hyperbolic function. - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType sech(genType angle); /// Cosecant hyperbolic function. - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType csch(genType angle); - + /// Cotangent hyperbolic function. - /// + /// /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType coth(genType angle); /// Inverse secant hyperbolic function. - /// + /// /// @return Return an angle expressed in radians. /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType asech(genType x); /// Inverse cosecant hyperbolic function. - /// + /// /// @return Return an angle expressed in radians. /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType acsch(genType x); - + /// Inverse cotangent hyperbolic function. - /// + /// /// @return Return an angle expressed in radians. /// @tparam genType Floating-point scalar or vector types. - /// + /// /// @see gtc_reciprocal template GLM_FUNC_DECL genType acoth(genType x); diff --git a/glm/gtc/reciprocal.inl b/glm/gtc/reciprocal.inl index dd538ef1..b0a8a7d9 100644 --- a/glm/gtc/reciprocal.inl +++ b/glm/gtc/reciprocal.inl @@ -41,7 +41,7 @@ namespace glm GLM_FUNC_QUALIFIER genType cot(genType angle) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559, "'cot' only accept floating-point values"); - + genType const pi_over_2 = genType(3.1415926535897932384626433832795 / 2.0); return glm::tan(pi_over_2 - angle); } diff --git a/glm/gtc/type_precision.hpp b/glm/gtc/type_precision.hpp index 3f9e41b7..a4524fe6 100644 --- a/glm/gtc/type_precision.hpp +++ b/glm/gtc/type_precision.hpp @@ -10,7 +10,7 @@ /// Include to use the features of this extension. /// /// Defines specific C++-based qualifier types. -/// +/// /// @ref core_precision defines types based on GLSL's qualifier qualifiers. This /// extension defines types based on explicitly-sized C++ data types. @@ -39,7 +39,7 @@ namespace glm { /////////////////////////// - // Signed int vector types + // Signed int vector types /// @addtogroup gtc_type_precision /// @{ @@ -47,7 +47,7 @@ namespace glm /// Low qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 lowp_int8; - + /// Low qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 lowp_int16; @@ -63,7 +63,7 @@ namespace glm /// Low qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 lowp_int8_t; - + /// Low qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 lowp_int16_t; @@ -79,7 +79,7 @@ namespace glm /// Low qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 lowp_i8; - + /// Low qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 lowp_i16; @@ -95,7 +95,7 @@ namespace glm /// Medium qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 mediump_int8; - + /// Medium qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 mediump_int16; @@ -111,7 +111,7 @@ namespace glm /// Medium qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 mediump_int8_t; - + /// Medium qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 mediump_int16_t; @@ -127,7 +127,7 @@ namespace glm /// Medium qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 mediump_i8; - + /// Medium qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 mediump_i16; @@ -143,7 +143,7 @@ namespace glm /// High qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 highp_int8; - + /// High qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 highp_int16; @@ -159,7 +159,7 @@ namespace glm /// High qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 highp_int8_t; - + /// High qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 highp_int16_t; @@ -175,7 +175,7 @@ namespace glm /// High qualifier 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 highp_i8; - + /// High qualifier 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 highp_i16; @@ -187,12 +187,12 @@ namespace glm /// High qualifier 64 bit signed integer type. /// @see gtc_type_precision typedef detail::int64 highp_i64; - + /// 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 int8; - + /// 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 int16; @@ -214,7 +214,7 @@ namespace glm /// 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 int8_t; - + /// 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 int16_t; @@ -231,7 +231,7 @@ namespace glm /// 8 bit signed integer type. /// @see gtc_type_precision typedef detail::int8 i8; - + /// 16 bit signed integer type. /// @see gtc_type_precision typedef detail::int16 i16; @@ -248,7 +248,7 @@ namespace glm /// 8 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i8, defaultp> i8vec1; - + /// 8 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i8, defaultp> i8vec2; @@ -265,7 +265,7 @@ namespace glm /// 16 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i16, defaultp> i16vec1; - + /// 16 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i16, defaultp> i16vec2; @@ -282,7 +282,7 @@ namespace glm /// 32 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i32, defaultp> i32vec1; - + /// 32 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i32, defaultp> i32vec2; @@ -299,7 +299,7 @@ namespace glm /// 64 bit signed integer scalar type. /// @see gtc_type_precision typedef vec<1, i64, defaultp> i64vec1; - + /// 64 bit signed integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, i64, defaultp> i64vec2; @@ -319,7 +319,7 @@ namespace glm /// Low qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 lowp_uint8; - + /// Low qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 lowp_uint16; @@ -335,7 +335,7 @@ namespace glm /// Low qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 lowp_uint8_t; - + /// Low qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 lowp_uint16_t; @@ -351,7 +351,7 @@ namespace glm /// Low qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 lowp_u8; - + /// Low qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 lowp_u16; @@ -363,11 +363,11 @@ namespace glm /// Low qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 lowp_u64; - + /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 mediump_uint8; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 mediump_uint16; @@ -383,7 +383,7 @@ namespace glm /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 mediump_uint8_t; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 mediump_uint16_t; @@ -399,7 +399,7 @@ namespace glm /// Medium qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 mediump_u8; - + /// Medium qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 mediump_u16; @@ -411,11 +411,11 @@ namespace glm /// Medium qualifier 64 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint64 mediump_u64; - + /// High qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 highp_uint8; - + /// High qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 highp_uint16; @@ -431,7 +431,7 @@ namespace glm /// High qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 highp_uint8_t; - + /// High qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 highp_uint16_t; @@ -447,7 +447,7 @@ namespace glm /// High qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 highp_u8; - + /// High qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 highp_u16; @@ -463,7 +463,7 @@ namespace glm /// Default qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 uint8; - + /// Default qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 uint16; @@ -485,7 +485,7 @@ namespace glm /// Default qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 uint8_t; - + /// Default qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 uint16_t; @@ -502,7 +502,7 @@ namespace glm /// Default qualifier 8 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint8 u8; - + /// Default qualifier 16 bit unsigned integer type. /// @see gtc_type_precision typedef detail::uint16 u16; @@ -520,7 +520,7 @@ namespace glm /// Default qualifier 8 bit unsigned integer scalar type. /// @see gtc_type_precision typedef vec<1, u8, defaultp> u8vec1; - + /// Default qualifier 8 bit unsigned integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, u8, defaultp> u8vec2; @@ -537,7 +537,7 @@ namespace glm /// Default qualifier 16 bit unsigned integer scalar type. /// @see gtc_type_precision typedef vec<1, u16, defaultp> u16vec1; - + /// Default qualifier 16 bit unsigned integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, u16, defaultp> u16vec2; @@ -554,7 +554,7 @@ namespace glm /// Default qualifier 32 bit unsigned integer scalar type. /// @see gtc_type_precision typedef vec<1, u32, defaultp> u32vec1; - + /// Default qualifier 32 bit unsigned integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, u32, defaultp> u32vec2; @@ -571,7 +571,7 @@ namespace glm /// Default qualifier 64 bit unsigned integer scalar type. /// @see gtc_type_precision typedef vec<1, u64, defaultp> u64vec1; - + /// Default qualifier 64 bit unsigned integer vector of 2 components type. /// @see gtc_type_precision typedef vec<2, u64, defaultp> u64vec2; @@ -630,7 +630,7 @@ namespace glm /// @see gtc_type_precision typedef vec<4, float, defaultp> fvec4; - + /// Single-qualifier floating-point vector of 1 component. /// @see gtc_type_precision typedef vec<1, f32, defaultp> f32vec1; @@ -667,7 +667,7 @@ namespace glm ////////////////////// - // Float matrix types + // Float matrix types /// Single-qualifier floating-point 1x1 matrix. /// @see gtc_type_precision diff --git a/glm/gtc/type_ptr.hpp b/glm/gtc/type_ptr.hpp index 5d223314..5c15cc40 100644 --- a/glm/gtc/type_ptr.hpp +++ b/glm/gtc/type_ptr.hpp @@ -15,7 +15,7 @@ /// takes any of the \ref core_template "core template types". It returns /// a pointer to the memory layout of the object. Matrix types store their values /// in column-major order. -/// +/// /// This is useful for uploading data to matrices or copying data to buffer objects. /// /// Example: @@ -204,7 +204,7 @@ namespace glm /// @see gtc_type_ptr template GLM_FUNC_DECL mat<4, 4, T, defaultp> make_mat4x4(T const * const ptr); - + /// Build a matrix from a pointer. /// @see gtc_type_ptr template @@ -214,7 +214,7 @@ namespace glm /// @see gtc_type_ptr template GLM_FUNC_DECL mat<3, 3, T, defaultp> make_mat3(T const * const ptr); - + /// Build a matrix from a pointer. /// @see gtc_type_ptr template diff --git a/glm/gtc/ulp.hpp b/glm/gtc/ulp.hpp index 648a4ab4..4ed48d56 100644 --- a/glm/gtc/ulp.hpp +++ b/glm/gtc/ulp.hpp @@ -8,8 +8,8 @@ /// /// Include to use the features of this extension. /// -/// Allow the measurement of the accuracy of a function against a reference -/// implementation. This extension works on floating-point data and provide results +/// Allow the measurement of the accuracy of a function against a reference +/// implementation. This extension works on floating-point data and provide results /// in ULP. #pragma once @@ -48,7 +48,7 @@ namespace glm /// @see gtc_ulp template GLM_FUNC_DECL genType prev_float(genType const& x, uint const& Distance); - + /// Return the distance in the number of ULP between 2 scalars. /// @see gtc_ulp template @@ -58,7 +58,7 @@ namespace glm /// @see gtc_ulp template GLM_FUNC_DECL vec<2, uint, Q> float_distance(vec<2, T, Q> const& x, vec<2, T, Q> const& y); - + /// @} }// namespace glm diff --git a/glm/gtc/ulp.inl b/glm/gtc/ulp.inl index d514a2c2..620be36c 100644 --- a/glm/gtc/ulp.inl +++ b/glm/gtc/ulp.inl @@ -79,8 +79,8 @@ namespace detail ix = hx&0x7fffffff; // |x| iy = hy&0x7fffffff; // |y| - if((ix>0x7f800000) || // x is nan - (iy>0x7f800000)) // y is nan + if((ix>0x7f800000) || // x is nan + (iy>0x7f800000)) // y is nan return x+y; if(compute_equal::call(x, y)) return y; // x=y, return y @@ -94,7 +94,7 @@ namespace detail return x; // raise underflow flag } if(hx>=0) - { // x > 0 + { // x > 0 if(hx>hy) // x > y, x -= ulp hx -= 1; else // x < y, x += ulp @@ -131,8 +131,8 @@ namespace detail GLM_EXTRACT_WORDS(hx, lx, x); GLM_EXTRACT_WORDS(hy, ly, y); - ix = hx & 0x7fffffff; // |x| - iy = hy & 0x7fffffff; // |y| + ix = hx & 0x7fffffff; // |x| + iy = hy & 0x7fffffff; // |y| if(((ix>=0x7ff00000)&&((ix-0x7ff00000)|lx)!=0) || // x is nan ((iy>=0x7ff00000)&&((iy-0x7ff00000)|ly)!=0)) // y is nan @@ -140,23 +140,23 @@ namespace detail if(detail::compute_equal::call(x, y)) return y; // x=y, return y if((ix|lx)==0) - { // x == 0 + { // x == 0 GLM_INSERT_WORDS(x, hy & 0x80000000, 1); // return +-minsubnormal t = x*x; if(detail::compute_equal::call(t, x)) return t; else - return x; // raise underflow flag + return x; // raise underflow flag } - if(hx>=0) { // x > 0 - if(hx>hy||((hx==hy)&&(lx>ly))) { // x > y, x -= ulp + if(hx>=0) { // x > 0 + if(hx>hy||((hx==hy)&&(lx>ly))) { // x > y, x -= ulp if(lx==0) hx -= 1; lx -= 1; } else { // x < y, x += ulp lx += 1; if(lx==0) hx += 1; } - } else { // x < 0 + } else { // x < 0 if(hy>=0||hx>hy||((hx==hy)&&(lx>ly))){// x < y, x -= ulp if(lx==0) hx -= 1; lx -= 1; diff --git a/glm/gtc/vec1.hpp b/glm/gtc/vec1.hpp index ab355e90..dfe200a9 100644 --- a/glm/gtc/vec1.hpp +++ b/glm/gtc/vec1.hpp @@ -7,7 +7,7 @@ /// @ingroup gtc /// /// Include to use the features of this extension. -/// +/// /// Add vec1, ivec1, uvec1 and bvec1 types. #pragma once @@ -67,7 +67,7 @@ namespace glm #elif(defined(GLM_PRECISION_LOWP_INT)) typedef lowp_ivec1 ivec1; #else - /// 1 component vector of signed integer numbers. + /// 1 component vector of signed integer numbers. /// @see gtc_vec1 extension. typedef highp_ivec1 ivec1; #endif//GLM_PRECISION @@ -79,7 +79,7 @@ namespace glm #elif(defined(GLM_PRECISION_LOWP_UINT)) typedef lowp_uvec1 uvec1; #else - /// 1 component vector of unsigned integer numbers. + /// 1 component vector of unsigned integer numbers. /// @see gtc_vec1 extension. typedef highp_uvec1 uvec1; #endif//GLM_PRECISION diff --git a/glm/gtx/associated_min_max.hpp b/glm/gtx/associated_min_max.hpp index 0c9935f3..42ac2eba 100644 --- a/glm/gtx/associated_min_max.hpp +++ b/glm/gtx/associated_min_max.hpp @@ -8,7 +8,7 @@ /// @ingroup gtx /// /// Include to use the features of this extension. -/// +/// /// @brief Min and max functions that return associated values not the compared onces. #pragma once diff --git a/glm/gtx/bit.hpp b/glm/gtx/bit.hpp index 1447fa00..2eb4c265 100644 --- a/glm/gtx/bit.hpp +++ b/glm/gtx/bit.hpp @@ -7,7 +7,7 @@ /// @ingroup gtx /// /// Include to use the features of this extension. -/// +/// /// Allow to perform bit operations on integer values #pragma once diff --git a/glm/gtx/closest_point.hpp b/glm/gtx/closest_point.hpp index 6859bb96..a7882999 100644 --- a/glm/gtx/closest_point.hpp +++ b/glm/gtx/closest_point.hpp @@ -28,20 +28,20 @@ namespace glm /// @addtogroup gtx_closest_point /// @{ - /// Find the point on a straight line which is the closet of a point. + /// Find the point on a straight line which is the closet of a point. /// @see gtx_closest_point template GLM_FUNC_DECL vec<3, T, Q> closestPointOnLine( vec<3, T, Q> const& point, - vec<3, T, Q> const& a, + vec<3, T, Q> const& a, vec<3, T, Q> const& b); - - /// 2d lines work as well + + /// 2d lines work as well template GLM_FUNC_DECL vec<2, T, Q> closestPointOnLine( vec<2, T, Q> const& point, - vec<2, T, Q> const& a, - vec<2, T, Q> const& b); + vec<2, T, Q> const& a, + vec<2, T, Q> const& b); /// @} }// namespace glm diff --git a/glm/gtx/closest_point.inl b/glm/gtx/closest_point.inl index a11d6283..26d1e382 100644 --- a/glm/gtx/closest_point.inl +++ b/glm/gtx/closest_point.inl @@ -22,7 +22,7 @@ namespace glm if(Distance >= LineLength) return b; return a + LineDirection * Distance; } - + template GLM_FUNC_QUALIFIER vec<2, T, Q> closestPointOnLine ( @@ -42,5 +42,5 @@ namespace glm if(Distance >= LineLength) return b; return a + LineDirection * Distance; } - + }//namespace glm diff --git a/glm/gtx/color_space.hpp b/glm/gtx/color_space.hpp index d1e655c3..9e95eb39 100644 --- a/glm/gtx/color_space.hpp +++ b/glm/gtx/color_space.hpp @@ -39,7 +39,7 @@ namespace glm template GLM_FUNC_DECL vec<3, T, Q> hsvColor( vec<3, T, Q> const& rgbValue); - + /// Build a saturation matrix. /// @see gtx_color_space template @@ -52,14 +52,14 @@ namespace glm GLM_FUNC_DECL vec<3, T, Q> saturation( T const s, vec<3, T, Q> const& color); - + /// Modify the saturation of a color. /// @see gtx_color_space template GLM_FUNC_DECL vec<4, T, Q> saturation( T const s, vec<4, T, Q> const& color); - + /// Compute color luminosity associating ratios (0.33, 0.59, 0.11) to RGB canals. /// @see gtx_color_space template diff --git a/glm/gtx/color_space.inl b/glm/gtx/color_space.inl index eb6b1d63..ff82395b 100644 --- a/glm/gtx/color_space.inl +++ b/glm/gtx/color_space.inl @@ -45,13 +45,13 @@ namespace glm rgbColor.b = hsv.z; break; case 4: - rgbColor.r = q; - rgbColor.g = o; + rgbColor.r = q; + rgbColor.g = o; rgbColor.b = hsv.z; break; case 5: - rgbColor.r = hsv.z; - rgbColor.g = o; + rgbColor.r = hsv.z; + rgbColor.g = o; rgbColor.b = p; break; } @@ -68,11 +68,11 @@ namespace glm float Max = max(max(rgbColor.r, rgbColor.g), rgbColor.b); float Delta = Max - Min; - hsv.z = Max; + hsv.z = Max; if(Max != static_cast(0)) { - hsv.y = Delta / hsv.z; + hsv.y = Delta / hsv.z; T h = static_cast(0); if(rgbColor.r == Max) @@ -85,7 +85,7 @@ namespace glm // between magenta & cyan h = static_cast(240) + T(60) * (rgbColor.r - rgbColor.g) / Delta; - if(h < T(0)) + if(h < T(0)) hsv.x = h + T(360); else hsv.x = h; @@ -133,7 +133,7 @@ namespace glm return saturation(s) * color; } - template + template GLM_FUNC_QUALIFIER T luminosity(const vec<3, T, Q>& color) { const vec<3, T, Q> tmp = vec<3, T, Q>(0.33, 0.59, 0.11); diff --git a/glm/gtx/common.hpp b/glm/gtx/common.hpp index 8081bff7..e73580e8 100644 --- a/glm/gtx/common.hpp +++ b/glm/gtx/common.hpp @@ -34,17 +34,17 @@ namespace glm /// Returns true if x is a denormalized number /// Numbers whose absolute value is too small to be represented in the normal format are represented in an alternate, denormalized format. /// This format is less precise but can represent values closer to zero. - /// + /// /// @tparam genType Floating-point scalar or vector types. /// /// @see GLSL isnan man page /// @see GLSL 4.20.8 specification, section 8.3 Common Functions - template + template GLM_FUNC_DECL typename genType::bool_type isdenormal(genType const& x); /// Similar to 'mod' but with a different rounding and integer support. /// Returns 'x - y * trunc(x/y)' instead of 'x - y * floor(x/y)' - /// + /// /// @see GLSL mod vs HLSL fmod /// @see GLSL mod man page template diff --git a/glm/gtx/common.inl b/glm/gtx/common.inl index 1531c2be..856cb853 100644 --- a/glm/gtx/common.inl +++ b/glm/gtx/common.inl @@ -27,7 +27,7 @@ namespace detail }; }//namespace detail - template + template GLM_FUNC_QUALIFIER bool isdenormal(T const& x) { GLM_STATIC_ASSERT(std::numeric_limits::is_iec559, "'isdenormal' only accept floating-point inputs"); diff --git a/glm/gtx/component_wise.hpp b/glm/gtx/component_wise.hpp index 39bab5d5..6ed7d559 100644 --- a/glm/gtx/component_wise.hpp +++ b/glm/gtx/component_wise.hpp @@ -2,7 +2,7 @@ /// @file glm/gtx/component_wise.hpp /// @date 2007-05-21 / 2011-06-07 /// @author Christophe Riccio -/// +/// /// @see core (dependence) /// /// @defgroup gtx_component_wise GLM_GTX_component_wise @@ -43,24 +43,24 @@ namespace glm template GLM_FUNC_DECL vec compScale(vec const& v); - /// Add all vector components together. + /// Add all vector components together. /// @see gtx_component_wise - template + template GLM_FUNC_DECL typename genType::value_type compAdd(genType const& v); - /// Multiply all vector components together. + /// Multiply all vector components together. /// @see gtx_component_wise - template + template GLM_FUNC_DECL typename genType::value_type compMul(genType const& v); /// Find the minimum value between single vector components. /// @see gtx_component_wise - template + template GLM_FUNC_DECL typename genType::value_type compMin(genType const& v); /// Find the maximum value between single vector components. /// @see gtx_component_wise - template + template GLM_FUNC_DECL typename genType::value_type compMax(genType const& v); /// @} diff --git a/glm/gtx/dual_quaternion.inl b/glm/gtx/dual_quaternion.inl index 78fb4f77..79f20800 100644 --- a/glm/gtx/dual_quaternion.inl +++ b/glm/gtx/dual_quaternion.inl @@ -258,35 +258,35 @@ namespace glm GLM_FUNC_QUALIFIER mat<3, 4, T, Q> mat3x4_cast(tdualquat const& x) { tquat r = x.real / length2(x.real); - + tquat const rr(r.w * x.real.w, r.x * x.real.x, r.y * x.real.y, r.z * x.real.z); r *= static_cast(2); - + T const xy = r.x * x.real.y; T const xz = r.x * x.real.z; T const yz = r.y * x.real.z; T const wx = r.w * x.real.x; T const wy = r.w * x.real.y; T const wz = r.w * x.real.z; - + vec<4, T, Q> const a( rr.w + rr.x - rr.y - rr.z, xy - wz, xz + wy, -(x.dual.w * r.x - x.dual.x * r.w + x.dual.y * r.z - x.dual.z * r.y)); - + vec<4, T, Q> const b( xy + wz, rr.w + rr.y - rr.x - rr.z, yz - wx, -(x.dual.w * r.y - x.dual.x * r.z - x.dual.y * r.w + x.dual.z * r.x)); - + vec<4, T, Q> const c( xz - wy, yz + wx, rr.w + rr.z - rr.x - rr.y, -(x.dual.w * r.z + x.dual.x * r.y - x.dual.y * r.x - x.dual.z * r.w)); - + return mat<3, 4, T, Q>(a, b, c); } @@ -302,7 +302,7 @@ namespace glm GLM_FUNC_QUALIFIER tdualquat dualquat_cast(mat<3, 4, T, Q> const& x) { tquat real; - + T const trace = x[0].x + x[1].y + x[2].z; if(trace > static_cast(0)) { @@ -340,7 +340,7 @@ namespace glm real.z = static_cast(0.5) * r; real.w = (x[1].x - x[0].y) * invr; } - + tquat dual; dual.x = static_cast(0.5) * ( x[0].w * real.w + x[1].w * real.z - x[2].w * real.y); dual.y = static_cast(0.5) * (-x[0].w * real.z + x[1].w * real.w + x[2].w * real.x); diff --git a/glm/gtx/euler_angles.hpp b/glm/gtx/euler_angles.hpp index e66e9281..c205c3ea 100644 --- a/glm/gtx/euler_angles.hpp +++ b/glm/gtx/euler_angles.hpp @@ -95,7 +95,7 @@ namespace glm T const& t1, T const& t2, T const& t3); - + /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template @@ -103,7 +103,7 @@ namespace glm T const& yaw, T const& pitch, T const& roll); - + /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template @@ -122,11 +122,11 @@ namespace glm template GLM_FUNC_DECL mat<3, 3, T, defaultp> orientate3(T const& angle); - /// Creates a 3D 3 * 3 rotation matrix from euler angles (Y * X * Z). + /// Creates a 3D 3 * 3 rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template GLM_FUNC_DECL mat<3, 3, T, Q> orientate3(vec<3, T, Q> const& angles); - + /// Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z). /// @see gtx_euler_angles template @@ -139,7 +139,7 @@ namespace glm T & t1, T & t2, T & t3); - + /// @} }//namespace glm diff --git a/glm/gtx/euler_angles.inl b/glm/gtx/euler_angles.inl index 24efedeb..4fcdd992 100644 --- a/glm/gtx/euler_angles.inl +++ b/glm/gtx/euler_angles.inl @@ -13,7 +13,7 @@ namespace glm { T cosX = glm::cos(angleX); T sinX = glm::sin(angleX); - + return mat<4, 4, T, defaultp>( T(1), T(0), T(0), T(0), T(0), cosX, sinX, T(0), @@ -130,7 +130,7 @@ namespace glm { return eulerAngleZ(angleZ) * eulerAngleY(angleY); } - + template GLM_FUNC_QUALIFIER mat<4, 4, T, defaultp> eulerAngleXYZ ( @@ -145,7 +145,7 @@ namespace glm T s1 = glm::sin(-t1); T s2 = glm::sin(-t2); T s3 = glm::sin(-t3); - + mat<4, 4, T, defaultp> Result; Result[0][0] = c2 * c3; Result[0][1] =-c1 * s3 + s1 * s2 * c3; @@ -165,7 +165,7 @@ namespace glm Result[3][3] = static_cast(1); return Result; } - + template GLM_FUNC_QUALIFIER mat<4, 4, T, defaultp> eulerAngleYXZ ( @@ -292,7 +292,7 @@ namespace glm { return yawPitchRoll(angles.z, angles.x, angles.y); } - + template GLM_FUNC_DECL void extractEulerAngleXYZ(mat<4, 4, T, defaultp> const& M, T & t1, diff --git a/glm/gtx/extend.hpp b/glm/gtx/extend.hpp index eda4e470..c456faeb 100644 --- a/glm/gtx/extend.hpp +++ b/glm/gtx/extend.hpp @@ -30,10 +30,10 @@ namespace glm /// Extends of Length the Origin position using the (Source - Origin) direction. /// @see gtx_extend - template + template GLM_FUNC_DECL genType extend( - genType const& Origin, - genType const& Source, + genType const& Origin, + genType const& Source, typename genType::value_type const Length); /// @} diff --git a/glm/gtx/extend.inl b/glm/gtx/extend.inl index 162a3ce3..9371ee60 100644 --- a/glm/gtx/extend.inl +++ b/glm/gtx/extend.inl @@ -6,8 +6,8 @@ namespace glm template GLM_FUNC_QUALIFIER genType extend ( - genType const& Origin, - genType const& Source, + genType const& Origin, + genType const& Source, genType const& Distance ) { diff --git a/glm/gtx/extended_min_max.hpp b/glm/gtx/extended_min_max.hpp index 3e767b0c..b061bc82 100644 --- a/glm/gtx/extended_min_max.hpp +++ b/glm/gtx/extended_min_max.hpp @@ -28,112 +28,112 @@ namespace glm /// @addtogroup gtx_extended_min_max /// @{ - /// Return the minimum component-wise values of 3 inputs + /// Return the minimum component-wise values of 3 inputs /// @see gtx_extented_min_max template GLM_FUNC_DECL T min( - T const& x, - T const& y, + T const& x, + T const& y, T const& z); /// Return the minimum component-wise values of 3 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C min( - C const& x, - typename C::T const& y, + C const& x, + typename C::T const& y, typename C::T const& z); - /// Return the minimum component-wise values of 3 inputs + /// Return the minimum component-wise values of 3 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C min( - C const& x, - C const& y, + C const& x, + C const& y, C const& z); - /// Return the minimum component-wise values of 4 inputs + /// Return the minimum component-wise values of 4 inputs /// @see gtx_extented_min_max template GLM_FUNC_DECL T min( - T const& x, - T const& y, - T const& z, + T const& x, + T const& y, + T const& z, T const& w); - /// Return the minimum component-wise values of 4 inputs + /// Return the minimum component-wise values of 4 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C min( - C const& x, - typename C::T const& y, - typename C::T const& z, + C const& x, + typename C::T const& y, + typename C::T const& z, typename C::T const& w); /// Return the minimum component-wise values of 4 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C min( - C const& x, - C const& y, + C const& x, + C const& y, C const& z, C const& w); - /// Return the maximum component-wise values of 3 inputs + /// Return the maximum component-wise values of 3 inputs /// @see gtx_extented_min_max template GLM_FUNC_DECL T max( - T const& x, - T const& y, + T const& x, + T const& y, T const& z); /// Return the maximum component-wise values of 3 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C max( - C const& x, - typename C::T const& y, + C const& x, + typename C::T const& y, typename C::T const& z); - /// Return the maximum component-wise values of 3 inputs + /// Return the maximum component-wise values of 3 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C max( - C const& x, - C const& y, + C const& x, + C const& y, C const& z); /// Return the maximum component-wise values of 4 inputs /// @see gtx_extented_min_max template GLM_FUNC_DECL T max( - T const& x, - T const& y, - T const& z, + T const& x, + T const& y, + T const& z, T const& w); - /// Return the maximum component-wise values of 4 inputs + /// Return the maximum component-wise values of 4 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C max( - C const& x, - typename C::T const& y, - typename C::T const& z, + C const& x, + typename C::T const& y, + typename C::T const& z, typename C::T const& w); - /// Return the maximum component-wise values of 4 inputs + /// Return the maximum component-wise values of 4 inputs /// @see gtx_extented_min_max template class C> GLM_FUNC_DECL C max( - C const& x, - C const& y, - C const& z, + C const& x, + C const& y, + C const& z, C const& w); /// Returns y if y < x; otherwise, it returns x. If one of the two arguments is NaN, the value of the other argument is returned. /// /// @tparam genType Floating-point or integer; scalar or vector types. - /// + /// /// @see gtx_extented_min_max template GLM_FUNC_DECL genType fmin(genType x, genType y); @@ -161,31 +161,31 @@ namespace glm GLM_FUNC_DECL vec fmin(vec const& x, vec const& y); /// Returns y if x < y; otherwise, it returns x. If one of the two arguments is NaN, the value of the other argument is returned. - /// + /// /// @tparam genType Floating-point; scalar or vector types. - /// + /// /// @see gtx_extented_min_max /// @see std::fmax documentation template GLM_FUNC_DECL genType fmax(genType x, genType y); /// Returns y if x < y; otherwise, it returns x. If one of the two arguments is NaN, the value of the other argument is returned. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see gtx_extented_min_max /// @see std::fmax documentation template GLM_FUNC_DECL vec fmax(vec const& x, T y); /// Returns y if x < y; otherwise, it returns x. If one of the two arguments is NaN, the value of the other argument is returned. - /// + /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see gtx_extented_min_max /// @see std::fmax documentation template diff --git a/glm/gtx/extended_min_max.inl b/glm/gtx/extended_min_max.inl index e308c6fe..ac3dd646 100644 --- a/glm/gtx/extended_min_max.inl +++ b/glm/gtx/extended_min_max.inl @@ -5,8 +5,8 @@ namespace glm { template GLM_FUNC_QUALIFIER T min( - T const& x, - T const& y, + T const& x, + T const& y, T const& z) { return glm::min(glm::min(x, y), z); @@ -15,8 +15,8 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C min ( - C const& x, - typename C::T const& y, + C const& x, + typename C::T const& y, typename C::T const& z ) { @@ -26,8 +26,8 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C min ( - C const& x, - C const& y, + C const& x, + C const& y, C const& z ) { @@ -37,9 +37,9 @@ namespace glm template GLM_FUNC_QUALIFIER T min ( - T const& x, - T const& y, - T const& z, + T const& x, + T const& y, + T const& z, T const& w ) { @@ -49,9 +49,9 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C min ( - C const& x, - typename C::T const& y, - typename C::T const& z, + C const& x, + typename C::T const& y, + typename C::T const& z, typename C::T const& w ) { @@ -61,9 +61,9 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C min ( - C const& x, - C const& y, - C const& z, + C const& x, + C const& y, + C const& z, C const& w ) { @@ -72,8 +72,8 @@ namespace glm template GLM_FUNC_QUALIFIER T max( - T const& x, - T const& y, + T const& x, + T const& y, T const& z) { return glm::max(glm::max(x, y), z); @@ -82,8 +82,8 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C max ( - C const& x, - typename C::T const& y, + C const& x, + typename C::T const& y, typename C::T const& z ) { @@ -93,8 +93,8 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C max ( - C const& x, - C const& y, + C const& x, + C const& y, C const& z ) { @@ -104,9 +104,9 @@ namespace glm template GLM_FUNC_QUALIFIER T max ( - T const& x, - T const& y, - T const& z, + T const& x, + T const& y, + T const& z, T const& w ) { @@ -116,9 +116,9 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C max ( - C const& x, - typename C::T const& y, - typename C::T const& z, + C const& x, + typename C::T const& y, + typename C::T const& z, typename C::T const& w ) { @@ -128,9 +128,9 @@ namespace glm template class C> GLM_FUNC_QUALIFIER C max ( - C const& x, - C const& y, - C const& z, + C const& x, + C const& y, + C const& z, C const& w ) { diff --git a/glm/gtx/exterior_product.hpp b/glm/gtx/exterior_product.hpp index 8376a520..4223b651 100644 --- a/glm/gtx/exterior_product.hpp +++ b/glm/gtx/exterior_product.hpp @@ -8,7 +8,7 @@ /// @ingroup gtx /// /// Include to use the features of this extension. -/// +/// /// @brief Allow to perform bit operations on integer values #pragma once @@ -30,7 +30,7 @@ namespace glm /// /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see Exterior product template GLM_FUNC_DECL T cross(vec<2, T, Q> const& v, vec<2, T, Q> const& u); diff --git a/glm/gtx/fast_square_root.hpp b/glm/gtx/fast_square_root.hpp index 1e1ec3cf..9e15cb0d 100644 --- a/glm/gtx/fast_square_root.hpp +++ b/glm/gtx/fast_square_root.hpp @@ -9,7 +9,7 @@ /// Include to use the features of this extension. /// /// Fast but less accurate implementations of square root based functions. -/// - Sqrt optimisation based on Newton's method, +/// - Sqrt optimisation based on Newton's method, /// www.gamedev.net/community/forums/topic.asp?topic id=139956 #pragma once @@ -35,7 +35,7 @@ namespace glm /// Faster than the common sqrt function but less accurate. /// /// @see gtx_fast_square_root extension. - template + template GLM_FUNC_DECL genType fastSqrt(genType x); /// Faster than the common sqrt function but less accurate. @@ -47,7 +47,7 @@ namespace glm /// Faster than the common inversesqrt function but less accurate. /// /// @see gtx_fast_square_root extension. - template + template GLM_FUNC_DECL genType fastInverseSqrt(genType x); /// Faster than the common inversesqrt function but less accurate. @@ -83,7 +83,7 @@ namespace glm /// Faster than the common normalize function but less accurate. /// /// @see gtx_fast_square_root extension. - template + template GLM_FUNC_DECL genType fastNormalize(genType const& x); /// @} diff --git a/glm/gtx/fast_trigonometry.hpp b/glm/gtx/fast_trigonometry.hpp index 739065fb..4ec87c36 100644 --- a/glm/gtx/fast_trigonometry.hpp +++ b/glm/gtx/fast_trigonometry.hpp @@ -30,7 +30,7 @@ namespace glm /// Wrap an angle to [0 2pi[ /// From GLM_GTX_fast_trigonometry extension. - template + template GLM_FUNC_DECL T wrapAngle(T angle); /// Faster than the common sin function but less accurate. @@ -40,37 +40,37 @@ namespace glm /// Faster than the common cos function but less accurate. /// From GLM_GTX_fast_trigonometry extension. - template + template GLM_FUNC_DECL T fastCos(T angle); - /// Faster than the common tan function but less accurate. - /// Defined between -2pi and 2pi. - /// From GLM_GTX_fast_trigonometry extension. - template - GLM_FUNC_DECL T fastTan(T angle); - - /// Faster than the common asin function but less accurate. + /// Faster than the common tan function but less accurate. /// Defined between -2pi and 2pi. /// From GLM_GTX_fast_trigonometry extension. - template + template + GLM_FUNC_DECL T fastTan(T angle); + + /// Faster than the common asin function but less accurate. + /// Defined between -2pi and 2pi. + /// From GLM_GTX_fast_trigonometry extension. + template GLM_FUNC_DECL T fastAsin(T angle); - /// Faster than the common acos function but less accurate. - /// Defined between -2pi and 2pi. + /// Faster than the common acos function but less accurate. + /// Defined between -2pi and 2pi. /// From GLM_GTX_fast_trigonometry extension. - template + template GLM_FUNC_DECL T fastAcos(T angle); /// Faster than the common atan function but less accurate. - /// Defined between -2pi and 2pi. - /// From GLM_GTX_fast_trigonometry extension. - template - GLM_FUNC_DECL T fastAtan(T y, T x); - - /// Faster than the common atan function but less accurate. /// Defined between -2pi and 2pi. /// From GLM_GTX_fast_trigonometry extension. - template + template + GLM_FUNC_DECL T fastAtan(T y, T x); + + /// Faster than the common atan function but less accurate. + /// Defined between -2pi and 2pi. + /// From GLM_GTX_fast_trigonometry extension. + template GLM_FUNC_DECL T fastAtan(T angle); /// @} diff --git a/glm/gtx/fast_trigonometry.inl b/glm/gtx/fast_trigonometry.inl index 847b5fcc..a733160b 100644 --- a/glm/gtx/fast_trigonometry.inl +++ b/glm/gtx/fast_trigonometry.inl @@ -42,7 +42,7 @@ namespace detail } // cos - template + template GLM_FUNC_QUALIFIER T fastCos(T x) { T const angle(wrapAngle(x)); @@ -64,7 +64,7 @@ namespace detail } // sin - template + template GLM_FUNC_QUALIFIER T fastSin(T x) { return fastCos(half_pi() - x); @@ -77,7 +77,7 @@ namespace detail } // tan - template + template GLM_FUNC_QUALIFIER T fastTan(T x) { return x + (x * x * x * T(0.3333333333)) + (x * x * x * x * x * T(0.1333333333333)) + (x * x * x * x * x * x * x * T(0.0539682539)); @@ -90,7 +90,7 @@ namespace detail } // asin - template + template GLM_FUNC_QUALIFIER T fastAsin(T x) { return x + (x * x * x * T(0.166666667)) + (x * x * x * x * x * T(0.075)) + (x * x * x * x * x * x * x * T(0.0446428571)) + (x * x * x * x * x * x * x * x * x * T(0.0303819444));// + (x * x * x * x * x * x * x * x * x * x * x * T(0.022372159)); @@ -103,7 +103,7 @@ namespace detail } // acos - template + template GLM_FUNC_QUALIFIER T fastAcos(T x) { return T(1.5707963267948966192313216916398) - fastAsin(x); //(PI / 2) @@ -116,7 +116,7 @@ namespace detail } // atan - template + template GLM_FUNC_QUALIFIER T fastAtan(T y, T x) { T sgn = sign(y) * sign(x); @@ -129,7 +129,7 @@ namespace detail return detail::functor2::call(fastAtan, y, x); } - template + template GLM_FUNC_QUALIFIER T fastAtan(T x) { return x - (x * x * x * T(0.333333333333)) + (x * x * x * x * x * T(0.2)) - (x * x * x * x * x * x * x * T(0.1428571429)) + (x * x * x * x * x * x * x * x * x * T(0.111111111111)) - (x * x * x * x * x * x * x * x * x * x * x * T(0.0909090909)); diff --git a/glm/gtx/functions.hpp b/glm/gtx/functions.hpp index afe816e6..98b50d8b 100644 --- a/glm/gtx/functions.hpp +++ b/glm/gtx/functions.hpp @@ -1,6 +1,6 @@ /// @ref gtx_functions /// @file glm/gtx/functions.hpp -/// +/// /// @see core (dependence) /// @see gtc_quaternion (dependence) /// @@ -8,7 +8,7 @@ /// @ingroup gtx /// /// Include to use the features of this extension. -/// +/// /// List of useful common functions. #pragma once diff --git a/glm/gtx/hash.hpp b/glm/gtx/hash.hpp index fe8a3efd..3196be7e 100644 --- a/glm/gtx/hash.hpp +++ b/glm/gtx/hash.hpp @@ -7,7 +7,7 @@ /// @ingroup gtx /// /// Include to use the features of this extension. -/// +/// /// Add std::hash support for glm types #pragma once @@ -121,7 +121,7 @@ namespace std { GLM_FUNC_DECL size_t operator()(glm::mat<4, 2, T,Q> const& m) const; }; - + template struct hash > { diff --git a/glm/gtx/integer.hpp b/glm/gtx/integer.hpp index 96637a13..7b802093 100644 --- a/glm/gtx/integer.hpp +++ b/glm/gtx/integer.hpp @@ -29,7 +29,7 @@ namespace glm /// @addtogroup gtx_integer /// @{ - //! Returns x raised to the y power. + //! Returns x raised to the y power. //! From GLM_GTX_integer extension. GLM_FUNC_DECL int pow(int x, uint y); @@ -47,10 +47,10 @@ namespace glm //! Return the factorial value of a number (!12 max, integer only) //! From GLM_GTX_integer extension. - template + template GLM_FUNC_DECL genType factorial(genType const& x); - //! 32bit signed integer. + //! 32bit signed integer. //! From GLM_GTX_integer extension. typedef signed int sint; @@ -58,7 +58,7 @@ namespace glm //! From GLM_GTX_integer extension. GLM_FUNC_DECL uint pow(uint x, uint y); - //! Returns the positive square root of x. + //! Returns the positive square root of x. //! From GLM_GTX_integer extension. GLM_FUNC_DECL uint sqrt(uint x); diff --git a/glm/gtx/integer.inl b/glm/gtx/integer.inl index 5891653b..c9fcb4e1 100644 --- a/glm/gtx/integer.inl +++ b/glm/gtx/integer.inl @@ -144,7 +144,7 @@ namespace detail #if(GLM_COMPILER & (GLM_COMPILER_VC | GLM_COMPILER_GCC)) - GLM_FUNC_QUALIFIER unsigned int nlz(unsigned int x) + GLM_FUNC_QUALIFIER unsigned int nlz(unsigned int x) { return 31u - findMSB(x); } @@ -152,7 +152,7 @@ namespace detail #else // Hackers Delight: http://www.hackersdelight.org/HDcode/nlz.c.txt - GLM_FUNC_QUALIFIER unsigned int nlz(unsigned int x) + GLM_FUNC_QUALIFIER unsigned int nlz(unsigned int x) { int y, m, n; diff --git a/glm/gtx/intersect.hpp b/glm/gtx/intersect.hpp index 61e2226a..cc7f9292 100644 --- a/glm/gtx/intersect.hpp +++ b/glm/gtx/intersect.hpp @@ -60,7 +60,7 @@ namespace glm genType const& vert0, genType const& vert1, genType const& vert2, genType & position); - //! Compute the intersection distance of a ray and a sphere. + //! Compute the intersection distance of a ray and a sphere. //! The ray direction vector is unit length. //! From GLM_GTX_intersect extension. template @@ -83,7 +83,7 @@ namespace glm GLM_FUNC_DECL bool intersectLineSphere( genType const& point0, genType const& point1, genType const& sphereCenter, typename genType::value_type sphereRadius, - genType & intersectionPosition1, genType & intersectionNormal1, + genType & intersectionPosition1, genType & intersectionNormal1, genType & intersectionPosition2 = genType(), genType & intersectionNormal2 = genType()); /// @} diff --git a/glm/gtx/intersect.inl b/glm/gtx/intersect.inl index 15257434..d10d65b2 100644 --- a/glm/gtx/intersect.inl +++ b/glm/gtx/intersect.inl @@ -200,7 +200,7 @@ namespace glm ( genType const& point0, genType const& point1, genType const& sphereCenter, typename genType::value_type sphereRadius, - genType & intersectionPoint1, genType & intersectionNormal1, + genType & intersectionPoint1, genType & intersectionNormal1, genType & intersectionPoint2, genType & intersectionNormal2 ) { diff --git a/glm/gtx/io.hpp b/glm/gtx/io.hpp index 49a1ec11..93db75a3 100644 --- a/glm/gtx/io.hpp +++ b/glm/gtx/io.hpp @@ -10,7 +10,7 @@ /// @ingroup gtx /// /// Include to use the features of this extension. -/// +/// /// std::[w]ostream support for glm types /// /// std::[w]ostream support for glm types + qualifier/width/etc. manipulators diff --git a/glm/gtx/log_base.inl b/glm/gtx/log_base.inl index 8f210eb6..981bacc7 100644 --- a/glm/gtx/log_base.inl +++ b/glm/gtx/log_base.inl @@ -3,7 +3,7 @@ namespace glm { - template + template GLM_FUNC_QUALIFIER genType log(genType const& x, genType const& base) { assert(!detail::compute_equal::call(x, static_cast(0))); diff --git a/glm/gtx/matrix_cross_product.hpp b/glm/gtx/matrix_cross_product.hpp index 967743b8..dfad8c1b 100644 --- a/glm/gtx/matrix_cross_product.hpp +++ b/glm/gtx/matrix_cross_product.hpp @@ -34,7 +34,7 @@ namespace glm template GLM_FUNC_DECL mat<3, 3, T, Q> matrixCross3( vec<3, T, Q> const& x); - + //! Build a cross product matrix. //! From GLM_GTX_matrix_cross_product extension. template diff --git a/glm/gtx/matrix_decompose.hpp b/glm/gtx/matrix_decompose.hpp index b7ec0e83..85bb2892 100644 --- a/glm/gtx/matrix_decompose.hpp +++ b/glm/gtx/matrix_decompose.hpp @@ -33,7 +33,7 @@ namespace glm /// @addtogroup gtx_matrix_decompose /// @{ - /// Decomposes a model matrix to translations, rotation and scale components + /// Decomposes a model matrix to translations, rotation and scale components /// @see gtx_matrix_decompose template GLM_FUNC_DECL bool decompose( diff --git a/glm/gtx/matrix_decompose.inl b/glm/gtx/matrix_decompose.inl index efa22374..02a5accc 100644 --- a/glm/gtx/matrix_decompose.inl +++ b/glm/gtx/matrix_decompose.inl @@ -11,7 +11,7 @@ namespace detail // result = (a * ascl) + (b * bscl) template GLM_FUNC_QUALIFIER vec<3, T, Q> combine( - vec<3, T, Q> const& a, + vec<3, T, Q> const& a, vec<3, T, Q> const& b, T ascl, T bscl) { @@ -56,8 +56,8 @@ namespace detail // First, isolate perspective. This is the messiest. if( - epsilonNotEqual(LocalMatrix[0][3], static_cast(0), epsilon()) || - epsilonNotEqual(LocalMatrix[1][3], static_cast(0), epsilon()) || + epsilonNotEqual(LocalMatrix[0][3], static_cast(0), epsilon()) || + epsilonNotEqual(LocalMatrix[1][3], static_cast(0), epsilon()) || epsilonNotEqual(LocalMatrix[2][3], static_cast(0), epsilon())) { // rightHandSide is the right hand side of the equation. diff --git a/glm/gtx/matrix_major_storage.hpp b/glm/gtx/matrix_major_storage.hpp index 7f264a59..3b922dfe 100644 --- a/glm/gtx/matrix_major_storage.hpp +++ b/glm/gtx/matrix_major_storage.hpp @@ -33,9 +33,9 @@ namespace glm //! From GLM_GTX_matrix_major_storage extension. template GLM_FUNC_DECL mat<2, 2, T, Q> rowMajor2( - vec<2, T, Q> const& v1, + vec<2, T, Q> const& v1, vec<2, T, Q> const& v2); - + //! Build a row major matrix from other matrix. //! From GLM_GTX_matrix_major_storage extension. template @@ -46,8 +46,8 @@ namespace glm //! From GLM_GTX_matrix_major_storage extension. template GLM_FUNC_DECL mat<3, 3, T, Q> rowMajor3( - vec<3, T, Q> const& v1, - vec<3, T, Q> const& v2, + vec<3, T, Q> const& v1, + vec<3, T, Q> const& v2, vec<3, T, Q> const& v3); //! Build a row major matrix from other matrix. @@ -60,9 +60,9 @@ namespace glm //! From GLM_GTX_matrix_major_storage extension. template GLM_FUNC_DECL mat<4, 4, T, Q> rowMajor4( - vec<4, T, Q> const& v1, + vec<4, T, Q> const& v1, vec<4, T, Q> const& v2, - vec<4, T, Q> const& v3, + vec<4, T, Q> const& v3, vec<4, T, Q> const& v4); //! Build a row major matrix from other matrix. @@ -75,9 +75,9 @@ namespace glm //! From GLM_GTX_matrix_major_storage extension. template GLM_FUNC_DECL mat<2, 2, T, Q> colMajor2( - vec<2, T, Q> const& v1, + vec<2, T, Q> const& v1, vec<2, T, Q> const& v2); - + //! Build a column major matrix from other matrix. //! From GLM_GTX_matrix_major_storage extension. template @@ -88,28 +88,28 @@ namespace glm //! From GLM_GTX_matrix_major_storage extension. template GLM_FUNC_DECL mat<3, 3, T, Q> colMajor3( - vec<3, T, Q> const& v1, - vec<3, T, Q> const& v2, + vec<3, T, Q> const& v1, + vec<3, T, Q> const& v2, vec<3, T, Q> const& v3); - + //! Build a column major matrix from other matrix. //! From GLM_GTX_matrix_major_storage extension. template GLM_FUNC_DECL mat<3, 3, T, Q> colMajor3( mat<3, 3, T, Q> const& m); - + //! Build a column major matrix from column vectors. //! From GLM_GTX_matrix_major_storage extension. template GLM_FUNC_DECL mat<4, 4, T, Q> colMajor4( - vec<4, T, Q> const& v1, - vec<4, T, Q> const& v2, - vec<4, T, Q> const& v3, + vec<4, T, Q> const& v1, + vec<4, T, Q> const& v2, + vec<4, T, Q> const& v3, vec<4, T, Q> const& v4); - + //! Build a column major matrix from other matrix. //! From GLM_GTX_matrix_major_storage extension. - template + template GLM_FUNC_DECL mat<4, 4, T, Q> colMajor4( mat<4, 4, T, Q> const& m); diff --git a/glm/gtx/matrix_major_storage.inl b/glm/gtx/matrix_major_storage.inl index f7325dab..8b1b1a83 100644 --- a/glm/gtx/matrix_major_storage.inl +++ b/glm/gtx/matrix_major_storage.inl @@ -3,10 +3,10 @@ namespace glm { - template + template GLM_FUNC_QUALIFIER mat<2, 2, T, Q> rowMajor2 ( - vec<2, T, Q> const& v1, + vec<2, T, Q> const& v1, vec<2, T, Q> const& v2 ) { @@ -18,7 +18,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<2, 2, T, Q> rowMajor2( const mat<2, 2, T, Q>& m) { @@ -30,10 +30,10 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> rowMajor3( - const vec<3, T, Q>& v1, - const vec<3, T, Q>& v2, + const vec<3, T, Q>& v1, + const vec<3, T, Q>& v2, const vec<3, T, Q>& v3) { mat<3, 3, T, Q> Result; @@ -49,7 +49,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> rowMajor3( const mat<3, 3, T, Q>& m) { @@ -66,11 +66,11 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> rowMajor4( - const vec<4, T, Q>& v1, - const vec<4, T, Q>& v2, - const vec<4, T, Q>& v3, + const vec<4, T, Q>& v1, + const vec<4, T, Q>& v2, + const vec<4, T, Q>& v3, const vec<4, T, Q>& v4) { mat<4, 4, T, Q> Result; @@ -93,7 +93,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> rowMajor4( const mat<4, 4, T, Q>& m) { @@ -117,48 +117,48 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<2, 2, T, Q> colMajor2( - const vec<2, T, Q>& v1, + const vec<2, T, Q>& v1, const vec<2, T, Q>& v2) { return mat<2, 2, T, Q>(v1, v2); } - template + template GLM_FUNC_QUALIFIER mat<2, 2, T, Q> colMajor2( const mat<2, 2, T, Q>& m) { return mat<2, 2, T, Q>(m); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> colMajor3( - const vec<3, T, Q>& v1, - const vec<3, T, Q>& v2, + const vec<3, T, Q>& v1, + const vec<3, T, Q>& v2, const vec<3, T, Q>& v3) { return mat<3, 3, T, Q>(v1, v2, v3); } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> colMajor3( const mat<3, 3, T, Q>& m) { return mat<3, 3, T, Q>(m); } - template + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> colMajor4( - const vec<4, T, Q>& v1, - const vec<4, T, Q>& v2, - const vec<4, T, Q>& v3, + const vec<4, T, Q>& v1, + const vec<4, T, Q>& v2, + const vec<4, T, Q>& v3, const vec<4, T, Q>& v4) { return mat<4, 4, T, Q>(v1, v2, v3, v4); } - template + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> colMajor4( const mat<4, 4, T, Q>& m) { diff --git a/glm/gtx/matrix_operation.inl b/glm/gtx/matrix_operation.inl index 04b7b8e5..da1aab85 100644 --- a/glm/gtx/matrix_operation.inl +++ b/glm/gtx/matrix_operation.inl @@ -88,7 +88,7 @@ namespace glm Result[1][1] = v[1]; Result[2][2] = v[2]; Result[3][3] = v[3]; - return Result; + return Result; } template @@ -101,7 +101,7 @@ namespace glm Result[0][0] = v[0]; Result[1][1] = v[1]; Result[2][2] = v[2]; - return Result; + return Result; } template @@ -113,6 +113,6 @@ namespace glm mat<4, 2, T, Q> Result(static_cast(1)); Result[0][0] = v[0]; Result[1][1] = v[1]; - return Result; + return Result; } }//namespace glm diff --git a/glm/gtx/matrix_query.hpp b/glm/gtx/matrix_query.hpp index 5df5f52f..4f7e855c 100644 --- a/glm/gtx/matrix_query.hpp +++ b/glm/gtx/matrix_query.hpp @@ -35,17 +35,17 @@ namespace glm /// From GLM_GTX_matrix_query extension. template GLM_FUNC_DECL bool isNull(mat<2, 2, T, Q> const& m, T const& epsilon); - + /// Return whether a matrix a null matrix. /// From GLM_GTX_matrix_query extension. template GLM_FUNC_DECL bool isNull(mat<3, 3, T, Q> const& m, T const& epsilon); - + /// Return whether a matrix is a null matrix. /// From GLM_GTX_matrix_query extension. template GLM_FUNC_DECL bool isNull(mat<4, 4, T, Q> const& m, T const& epsilon); - + /// Return whether a matrix is an identity matrix. /// From GLM_GTX_matrix_query extension. template class matType> diff --git a/glm/gtx/matrix_transform_2d.hpp b/glm/gtx/matrix_transform_2d.hpp index 239ab9f4..56c9bb89 100644 --- a/glm/gtx/matrix_transform_2d.hpp +++ b/glm/gtx/matrix_transform_2d.hpp @@ -29,21 +29,21 @@ namespace glm { /// @addtogroup gtx_matrix_transform_2d /// @{ - + /// Builds a translation 3 * 3 matrix created from a vector of 2 components. /// /// @param m Input matrix multiplied by this translation matrix. - /// @param v Coordinates of a translation vector. + /// @param v Coordinates of a translation vector. template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> translate( mat<3, 3, T, Q> const& m, vec<2, T, Q> const& v); - /// Builds a rotation 3 * 3 matrix created from an angle. + /// Builds a rotation 3 * 3 matrix created from an angle. /// /// @param m Input matrix multiplied by this translation matrix. /// @param angle Rotation angle expressed in radians. - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> rotate( mat<3, 3, T, Q> const& m, T angle); @@ -51,26 +51,26 @@ namespace glm /// Builds a scale 3 * 3 matrix created from a vector of 2 components. /// /// @param m Input matrix multiplied by this translation matrix. - /// @param v Coordinates of a scale vector. - template + /// @param v Coordinates of a scale vector. + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> scale( mat<3, 3, T, Q> const& m, vec<2, T, Q> const& v); - /// Builds an horizontal (parallel to the x axis) shear 3 * 3 matrix. + /// Builds an horizontal (parallel to the x axis) shear 3 * 3 matrix. /// /// @param m Input matrix multiplied by this translation matrix. /// @param y Shear factor. - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> shearX( mat<3, 3, T, Q> const& m, T y); - /// Builds a vertical (parallel to the y axis) shear 3 * 3 matrix. + /// Builds a vertical (parallel to the y axis) shear 3 * 3 matrix. /// /// @param m Input matrix multiplied by this translation matrix. /// @param x Shear factor. - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> shearY( mat<3, 3, T, Q> const& m, T x); diff --git a/glm/gtx/matrix_transform_2d.inl b/glm/gtx/matrix_transform_2d.inl index e4036984..9ae83d94 100644 --- a/glm/gtx/matrix_transform_2d.inl +++ b/glm/gtx/matrix_transform_2d.inl @@ -6,8 +6,8 @@ namespace glm { - - template + + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> translate( mat<3, 3, T, Q> const& m, vec<2, T, Q> const& v) @@ -18,7 +18,7 @@ namespace glm } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> rotate( mat<3, 3, T, Q> const& m, T angle) @@ -34,7 +34,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> scale( mat<3, 3, T, Q> const& m, vec<2, T, Q> const& v) @@ -46,7 +46,7 @@ namespace glm return Result; } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> shearX( mat<3, 3, T, Q> const& m, T y) @@ -56,7 +56,7 @@ namespace glm return m * Result; } - template + template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> shearY( mat<3, 3, T, Q> const& m, T x) diff --git a/glm/gtx/mixed_product.hpp b/glm/gtx/mixed_product.hpp index 58562aab..f1ed6e08 100644 --- a/glm/gtx/mixed_product.hpp +++ b/glm/gtx/mixed_product.hpp @@ -29,10 +29,10 @@ namespace glm /// @{ /// @brief Mixed product of 3 vectors (from GLM_GTX_mixed_product extension) - template + template GLM_FUNC_DECL T mixedProduct( - vec<3, T, Q> const& v1, - vec<3, T, Q> const& v2, + vec<3, T, Q> const& v1, + vec<3, T, Q> const& v2, vec<3, T, Q> const& v3); /// @} diff --git a/glm/gtx/norm.hpp b/glm/gtx/norm.hpp index 46474e07..2f106d87 100644 --- a/glm/gtx/norm.hpp +++ b/glm/gtx/norm.hpp @@ -54,12 +54,12 @@ namespace glm //! From GLM_GTX_norm extension. template GLM_FUNC_DECL T l2Norm(vec<3, T, Q> const& x, vec<3, T, Q> const& y); - + //! Returns the L2 norm of v. //! From GLM_GTX_norm extension. template GLM_FUNC_DECL T l2Norm(vec<3, T, Q> const& x); - + //! Returns the L norm between x and y. //! From GLM_GTX_norm extension. template diff --git a/glm/gtx/normal.hpp b/glm/gtx/normal.hpp index 15cec9c2..03dbffe8 100644 --- a/glm/gtx/normal.hpp +++ b/glm/gtx/normal.hpp @@ -29,10 +29,10 @@ namespace glm /// @addtogroup gtx_normal /// @{ - /// Computes triangle normal from triangle points. + /// Computes triangle normal from triangle points. /// /// @see gtx_normal - template + template GLM_FUNC_DECL vec<3, T, Q> triangleNormal(vec<3, T, Q> const& p1, vec<3, T, Q> const& p2, vec<3, T, Q> const& p3); /// @} diff --git a/glm/gtx/normal.inl b/glm/gtx/normal.inl index d930a253..bcd74e5d 100644 --- a/glm/gtx/normal.inl +++ b/glm/gtx/normal.inl @@ -3,11 +3,11 @@ namespace glm { - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> triangleNormal ( - vec<3, T, Q> const& p1, - vec<3, T, Q> const& p2, + vec<3, T, Q> const& p1, + vec<3, T, Q> const& p2, vec<3, T, Q> const& p3 ) { diff --git a/glm/gtx/number_precision.hpp b/glm/gtx/number_precision.hpp index 3732a56c..3f4bee1f 100644 --- a/glm/gtx/number_precision.hpp +++ b/glm/gtx/number_precision.hpp @@ -30,7 +30,7 @@ namespace glm{ namespace gtx { ///////////////////////////// - // Unsigned int vector types + // Unsigned int vector types /// @addtogroup gtx_number_precision /// @{ @@ -41,13 +41,13 @@ namespace gtx typedef u64 u64vec1; //!< \brief 64bit unsigned integer scalar. (from GLM_GTX_number_precision extension) ////////////////////// - // Float vector types + // Float vector types typedef f32 f32vec1; //!< \brief Single-qualifier floating-point scalar. (from GLM_GTX_number_precision extension) typedef f64 f64vec1; //!< \brief Single-qualifier floating-point scalar. (from GLM_GTX_number_precision extension) ////////////////////// - // Float matrix types + // Float matrix types typedef f32 f32mat1; //!< \brief Single-qualifier floating-point scalar. (from GLM_GTX_number_precision extension) typedef f32 f32mat1x1; //!< \brief Single-qualifier floating-point scalar. (from GLM_GTX_number_precision extension) diff --git a/glm/gtx/orthonormalize.hpp b/glm/gtx/orthonormalize.hpp index 2a684ee4..48b157f9 100644 --- a/glm/gtx/orthonormalize.hpp +++ b/glm/gtx/orthonormalize.hpp @@ -34,13 +34,13 @@ namespace glm /// Returns the orthonormalized matrix of m. /// /// @see gtx_orthonormalize - template + template GLM_FUNC_DECL mat<3, 3, T, Q> orthonormalize(mat<3, 3, T, Q> const& m); - + /// Orthonormalizes x according y. /// /// @see gtx_orthonormalize - template + template GLM_FUNC_DECL vec<3, T, Q> orthonormalize(vec<3, T, Q> const& x, vec<3, T, Q> const& y); /// @} diff --git a/glm/gtx/orthonormalize.inl b/glm/gtx/orthonormalize.inl index 1cc087d6..c65db11b 100644 --- a/glm/gtx/orthonormalize.inl +++ b/glm/gtx/orthonormalize.inl @@ -22,7 +22,7 @@ namespace glm return r; } - template + template GLM_FUNC_QUALIFIER vec<3, T, Q> orthonormalize(vec<3, T, Q> const& x, vec<3, T, Q> const& y) { return normalize(x - y * dot(y, x)); diff --git a/glm/gtx/quaternion.hpp b/glm/gtx/quaternion.hpp index c3d99a5c..7310d087 100644 --- a/glm/gtx/quaternion.hpp +++ b/glm/gtx/quaternion.hpp @@ -54,7 +54,7 @@ namespace glm vec<3, T, Q> const& v, tquat const& q); - //! Compute a point on a path according squad equation. + //! Compute a point on a path according squad equation. //! q1 and q2 are control points; s1 and s2 are intermediate control points. /// /// @see gtx_quaternion @@ -180,7 +180,7 @@ namespace glm /// @see gtx_quaternion template GLM_FUNC_DECL tquat rotation( - vec<3, T, Q> const& orig, + vec<3, T, Q> const& orig, vec<3, T, Q> const& dest); /// Build a look at quaternion based on the default handedness. @@ -209,9 +209,9 @@ namespace glm GLM_FUNC_DECL tquat quatLookAtLH( vec<3, T, Q> const& direction, vec<3, T, Q> const& up); - + /// Returns the squared length of x. - /// + /// /// @see gtx_quaternion template GLM_FUNC_DECL T length2(tquat const& q); diff --git a/glm/gtx/quaternion.inl b/glm/gtx/quaternion.inl index b29b53d8..fde7a8fb 100644 --- a/glm/gtx/quaternion.inl +++ b/glm/gtx/quaternion.inl @@ -211,12 +211,12 @@ namespace glm T invs = static_cast(1) / s; return tquat( - s * static_cast(0.5f), + s * static_cast(0.5f), rotationAxis.x * invs, rotationAxis.y * invs, rotationAxis.z * invs); } - + template GLM_FUNC_QUALIFIER tquat quatLookAt(vec<3, T, Q> const& direction, vec<3, T, Q> const& up) { diff --git a/glm/gtx/range.hpp b/glm/gtx/range.hpp index e0ef46af..38c5713a 100644 --- a/glm/gtx/range.hpp +++ b/glm/gtx/range.hpp @@ -41,31 +41,31 @@ namespace glm { return v.length(); } - + template inline length_t components(vec<2, T, Q> const& v) { return v.length(); } - + template inline length_t components(vec<3, T, Q> const& v) { return v.length(); } - + template inline length_t components(vec<4, T, Q> const& v) { return v.length(); } - + template inline length_t components(genType const& m) { return m.length() * m[0].length(); } - + template inline typename genType::value_type const * begin(genType const& v) { diff --git a/glm/gtx/raw_data.hpp b/glm/gtx/raw_data.hpp index fb34c8cb..f377c4ea 100644 --- a/glm/gtx/raw_data.hpp +++ b/glm/gtx/raw_data.hpp @@ -29,19 +29,19 @@ namespace glm /// @addtogroup gtx_raw_data /// @{ - //! Type for byte numbers. + //! Type for byte numbers. //! From GLM_GTX_raw_data extension. typedef detail::uint8 byte; - //! Type for word numbers. + //! Type for word numbers. //! From GLM_GTX_raw_data extension. typedef detail::uint16 word; - //! Type for dword numbers. + //! Type for dword numbers. //! From GLM_GTX_raw_data extension. typedef detail::uint32 dword; - //! Type for qword numbers. + //! Type for qword numbers. //! From GLM_GTX_raw_data extension. typedef detail::uint64 qword; diff --git a/glm/gtx/rotate_normalized_axis.hpp b/glm/gtx/rotate_normalized_axis.hpp index eee90d6e..16032d78 100644 --- a/glm/gtx/rotate_normalized_axis.hpp +++ b/glm/gtx/rotate_normalized_axis.hpp @@ -32,17 +32,17 @@ namespace glm /// @addtogroup gtx_rotate_normalized_axis /// @{ - /// Builds a rotation 4 * 4 matrix created from a normalized axis and an angle. - /// + /// Builds a rotation 4 * 4 matrix created from a normalized axis and an angle. + /// /// @param m Input matrix multiplied by this rotation matrix. /// @param angle Rotation angle expressed in radians. /// @param axis Rotation axis, must be normalized. /// @tparam T Value type used to build the matrix. Currently supported: half (not recommanded), float or double. - /// + /// /// @see gtx_rotate_normalized_axis - /// @see - rotate(T angle, T x, T y, T z) - /// @see - rotate(mat<4, 4, T, Q> const& m, T angle, T x, T y, T z) - /// @see - rotate(T angle, vec<3, T, Q> const& v) + /// @see - rotate(T angle, T x, T y, T z) + /// @see - rotate(mat<4, 4, T, Q> const& m, T angle, T x, T y, T z) + /// @see - rotate(T angle, vec<3, T, Q> const& v) template GLM_FUNC_DECL mat<4, 4, T, Q> rotateNormalizedAxis( mat<4, 4, T, Q> const& m, @@ -50,11 +50,11 @@ namespace glm vec<3, T, Q> const& axis); /// Rotates a quaternion from a vector of 3 components normalized axis and an angle. - /// + /// /// @param q Source orientation /// @param angle Angle expressed in radians. /// @param axis Normalized axis of the rotation, must be normalized. - /// + /// /// @see gtx_rotate_normalized_axis template GLM_FUNC_DECL tquat rotateNormalizedAxis( diff --git a/glm/gtx/rotate_normalized_axis.inl b/glm/gtx/rotate_normalized_axis.inl index 6a578dff..66e09103 100644 --- a/glm/gtx/rotate_normalized_axis.inl +++ b/glm/gtx/rotate_normalized_axis.inl @@ -43,7 +43,7 @@ namespace glm template GLM_FUNC_QUALIFIER tquat rotateNormalizedAxis ( - tquat const& q, + tquat const& q, T const& angle, vec<3, T, Q> const& v ) diff --git a/glm/gtx/rotate_vector.hpp b/glm/gtx/rotate_vector.hpp index c8ace89e..2ad909db 100644 --- a/glm/gtx/rotate_vector.hpp +++ b/glm/gtx/rotate_vector.hpp @@ -31,11 +31,11 @@ namespace glm /// @{ /// Returns Spherical interpolation between two vectors - /// + /// /// @param x A first vector /// @param y A second vector /// @param a Interpolation factor. The interpolation is defined beyond the range [0, 1]. - /// + /// /// @see gtx_rotate_vector template GLM_FUNC_DECL vec<3, T, Q> slerp( @@ -49,7 +49,7 @@ namespace glm GLM_FUNC_DECL vec<2, T, Q> rotate( vec<2, T, Q> const& v, T const& angle); - + //! Rotate a three dimensional vector around an axis. //! From GLM_GTX_rotate_vector extension. template @@ -57,7 +57,7 @@ namespace glm vec<3, T, Q> const& v, T const& angle, vec<3, T, Q> const& normal); - + //! Rotate a four dimensional vector around an axis. //! From GLM_GTX_rotate_vector extension. template @@ -65,7 +65,7 @@ namespace glm vec<4, T, Q> const& v, T const& angle, vec<3, T, Q> const& normal); - + //! Rotate a three dimensional vector around the X axis. //! From GLM_GTX_rotate_vector extension. template @@ -79,35 +79,35 @@ namespace glm GLM_FUNC_DECL vec<3, T, Q> rotateY( vec<3, T, Q> const& v, T const& angle); - + //! Rotate a three dimensional vector around the Z axis. //! From GLM_GTX_rotate_vector extension. template GLM_FUNC_DECL vec<3, T, Q> rotateZ( vec<3, T, Q> const& v, T const& angle); - + //! Rotate a four dimensional vector around the X axis. //! From GLM_GTX_rotate_vector extension. template GLM_FUNC_DECL vec<4, T, Q> rotateX( vec<4, T, Q> const& v, T const& angle); - + //! Rotate a four dimensional vector around the Y axis. //! From GLM_GTX_rotate_vector extension. template GLM_FUNC_DECL vec<4, T, Q> rotateY( vec<4, T, Q> const& v, T const& angle); - + //! Rotate a four dimensional vector around the Z axis. //! From GLM_GTX_rotate_vector extension. template GLM_FUNC_DECL vec<4, T, Q> rotateZ( vec<4, T, Q> const& v, T const& angle); - + //! Build a rotation matrix from a normal and a up vector. //! From GLM_GTX_rotate_vector extension. template diff --git a/glm/gtx/scalar_relational.inl b/glm/gtx/scalar_relational.inl index e089e2a7..8da72362 100644 --- a/glm/gtx/scalar_relational.inl +++ b/glm/gtx/scalar_relational.inl @@ -6,7 +6,7 @@ namespace glm template GLM_FUNC_QUALIFIER bool lessThan ( - T const& x, + T const& x, T const& y ) { @@ -16,7 +16,7 @@ namespace glm template GLM_FUNC_QUALIFIER bool lessThanEqual ( - T const& x, + T const& x, T const& y ) { @@ -26,7 +26,7 @@ namespace glm template GLM_FUNC_QUALIFIER bool greaterThan ( - T const& x, + T const& x, T const& y ) { @@ -36,7 +36,7 @@ namespace glm template GLM_FUNC_QUALIFIER bool greaterThanEqual ( - T const& x, + T const& x, T const& y ) { @@ -46,7 +46,7 @@ namespace glm template GLM_FUNC_QUALIFIER bool equal ( - T const& x, + T const& x, T const& y ) { @@ -56,7 +56,7 @@ namespace glm template GLM_FUNC_QUALIFIER bool notEqual ( - T const& x, + T const& x, T const& y ) { diff --git a/glm/gtx/spline.hpp b/glm/gtx/spline.hpp index f96d7e07..f080fece 100644 --- a/glm/gtx/spline.hpp +++ b/glm/gtx/spline.hpp @@ -31,32 +31,32 @@ namespace glm /// Return a point from a catmull rom curve. /// @see gtx_spline extension. - template + template GLM_FUNC_DECL genType catmullRom( - genType const& v1, - genType const& v2, - genType const& v3, - genType const& v4, + genType const& v1, + genType const& v2, + genType const& v3, + genType const& v4, typename genType::value_type const& s); - + /// Return a point from a hermite curve. /// @see gtx_spline extension. - template + template GLM_FUNC_DECL genType hermite( - genType const& v1, - genType const& t1, - genType const& v2, - genType const& t2, + genType const& v1, + genType const& t1, + genType const& v2, + genType const& t2, typename genType::value_type const& s); - - /// Return a point from a cubic curve. + + /// Return a point from a cubic curve. /// @see gtx_spline extension. - template + template GLM_FUNC_DECL genType cubic( - genType const& v1, - genType const& v2, - genType const& v3, - genType const& v4, + genType const& v1, + genType const& v2, + genType const& v3, + genType const& v4, typename genType::value_type const& s); /// @} diff --git a/glm/gtx/spline.inl b/glm/gtx/spline.inl index a60a0b77..ca7b439e 100644 --- a/glm/gtx/spline.inl +++ b/glm/gtx/spline.inl @@ -6,10 +6,10 @@ namespace glm template GLM_FUNC_QUALIFIER genType catmullRom ( - genType const& v1, - genType const& v2, - genType const& v3, - genType const& v4, + genType const& v1, + genType const& v2, + genType const& v3, + genType const& v4, typename genType::value_type const& s ) { @@ -28,10 +28,10 @@ namespace glm template GLM_FUNC_QUALIFIER genType hermite ( - genType const& v1, - genType const& t1, - genType const& v2, - genType const& t2, + genType const& v1, + genType const& t1, + genType const& v2, + genType const& t2, typename genType::value_type const& s ) { @@ -49,10 +49,10 @@ namespace glm template GLM_FUNC_QUALIFIER genType cubic ( - genType const& v1, - genType const& v2, - genType const& v3, - genType const& v4, + genType const& v1, + genType const& v2, + genType const& v3, + genType const& v4, typename genType::value_type const& s ) { diff --git a/glm/gtx/string_cast.inl b/glm/gtx/string_cast.inl index 42998005..e237e8e5 100644 --- a/glm/gtx/string_cast.inl +++ b/glm/gtx/string_cast.inl @@ -232,8 +232,8 @@ namespace detail LiteralStr, LiteralStr, LiteralStr)); return detail::format(FormatStr.c_str(), - static_cast::value_type>(x[0]), - static_cast::value_type>(x[1]), + static_cast::value_type>(x[0]), + static_cast::value_type>(x[1]), static_cast::value_type>(x[2])); } }; @@ -249,7 +249,7 @@ namespace detail PrefixStr, LiteralStr, LiteralStr, LiteralStr, LiteralStr)); - return detail::format(FormatStr.c_str(), + return detail::format(FormatStr.c_str(), static_cast::value_type>(x[0]), static_cast::value_type>(x[1]), static_cast::value_type>(x[2]), diff --git a/glm/gtx/transform.hpp b/glm/gtx/transform.hpp index d23b99ce..c4467bd1 100644 --- a/glm/gtx/transform.hpp +++ b/glm/gtx/transform.hpp @@ -39,12 +39,12 @@ namespace glm GLM_FUNC_DECL mat<4, 4, T, Q> translate( vec<3, T, Q> const& v); - /// Builds a rotation 4 * 4 matrix created from an axis of 3 scalars and an angle expressed in radians. + /// Builds a rotation 4 * 4 matrix created from an axis of 3 scalars and an angle expressed in radians. /// @see gtc_matrix_transform /// @see gtx_transform template GLM_FUNC_DECL mat<4, 4, T, Q> rotate( - T angle, + T angle, vec<3, T, Q> const& v); /// Transforms a matrix with a scale 4 * 4 matrix created from a vector of 3 components. diff --git a/glm/gtx/transform2.hpp b/glm/gtx/transform2.hpp index 85f5bea4..2966cce3 100644 --- a/glm/gtx/transform2.hpp +++ b/glm/gtx/transform2.hpp @@ -37,22 +37,22 @@ namespace glm //! Transforms a matrix with a shearing on Y axis. //! From GLM_GTX_transform2 extension. - template + template GLM_FUNC_DECL mat<3, 3, T, Q> shearY2D(mat<3, 3, T, Q> const& m, T x); //! Transforms a matrix with a shearing on X axis //! From GLM_GTX_transform2 extension. - template + template GLM_FUNC_DECL mat<4, 4, T, Q> shearX3D(mat<4, 4, T, Q> const& m, T y, T z); //! Transforms a matrix with a shearing on Y axis. //! From GLM_GTX_transform2 extension. - template + template GLM_FUNC_DECL mat<4, 4, T, Q> shearY3D(mat<4, 4, T, Q> const& m, T x, T z); - //! Transforms a matrix with a shearing on Z axis. + //! Transforms a matrix with a shearing on Z axis. //! From GLM_GTX_transform2 extension. - template + template GLM_FUNC_DECL mat<4, 4, T, Q> shearZ3D(mat<4, 4, T, Q> const& m, T x, T y); //template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> shear(const mat<4, 4, T, Q> & m, shearPlane, planePoint, angle) @@ -62,10 +62,10 @@ namespace glm // Reflect functions seem to don't work //template mat<3, 3, T, Q> reflect2D(const mat<3, 3, T, Q> & m, const vec<3, T, Q>& normal){return reflect2DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension) //template mat<4, 4, T, Q> reflect3D(const mat<4, 4, T, Q> & m, const vec<3, T, Q>& normal){return reflect3DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension) - + //! Build planar projection matrix along normal axis. //! From GLM_GTX_transform2 extension. - template + template GLM_FUNC_DECL mat<3, 3, T, Q> proj2D(mat<3, 3, T, Q> const& m, vec<3, T, Q> const& normal); //! Build planar projection matrix along normal axis. @@ -73,7 +73,7 @@ namespace glm template GLM_FUNC_DECL mat<4, 4, T, Q> proj3D(mat<4, 4, T, Q> const & m, vec<3, T, Q> const& normal); - //! Build a scale bias matrix. + //! Build a scale bias matrix. //! From GLM_GTX_transform2 extension. template GLM_FUNC_DECL mat<4, 4, T, Q> scaleBias(T scale, T bias); diff --git a/glm/gtx/transform2.inl b/glm/gtx/transform2.inl index 7125235f..59091eb5 100644 --- a/glm/gtx/transform2.inl +++ b/glm/gtx/transform2.inl @@ -77,7 +77,7 @@ namespace glm template GLM_FUNC_QUALIFIER mat<3, 3, T, Q> proj2D( - const mat<3, 3, T, Q>& m, + const mat<3, 3, T, Q>& m, const vec<3, T, Q>& normal) { mat<3, 3, T, Q> r(static_cast(1)); @@ -90,7 +90,7 @@ namespace glm template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> proj3D( - const mat<4, 4, T, Q>& m, + const mat<4, 4, T, Q>& m, const vec<3, T, Q>& normal) { mat<4, 4, T, Q> r(static_cast(1)); @@ -117,7 +117,7 @@ namespace glm return result; } - template + template GLM_FUNC_QUALIFIER mat<4, 4, T, Q> scaleBias(mat<4, 4, T, Q> const& m, T scale, T bias) { return m * scaleBias(scale, bias); diff --git a/glm/gtx/type_aligned.hpp b/glm/gtx/type_aligned.hpp index 6ff9f276..fdfadd47 100644 --- a/glm/gtx/type_aligned.hpp +++ b/glm/gtx/type_aligned.hpp @@ -29,7 +29,7 @@ namespace glm { /////////////////////////// - // Signed int vector types + // Signed int vector types /// @addtogroup gtx_type_aligned /// @{ @@ -241,7 +241,7 @@ namespace glm /// Default qualifier 32 bit signed integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(ivec1, aligned_ivec1, 4); - + /// Default qualifier 32 bit signed integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(ivec2, aligned_ivec2, 8); @@ -275,7 +275,7 @@ namespace glm /// Default qualifier 16 bit signed integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(i16vec1, aligned_i16vec1, 2); - + /// Default qualifier 16 bit signed integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(i16vec2, aligned_i16vec2, 4); @@ -292,7 +292,7 @@ namespace glm /// Default qualifier 32 bit signed integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(i32vec1, aligned_i32vec1, 4); - + /// Default qualifier 32 bit signed integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(i32vec2, aligned_i32vec2, 8); @@ -309,7 +309,7 @@ namespace glm /// Default qualifier 64 bit signed integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(i64vec1, aligned_i64vec1, 8); - + /// Default qualifier 64 bit signed integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(i64vec2, aligned_i64vec2, 16); @@ -533,7 +533,7 @@ namespace glm /// Default qualifier 32 bit unsigned integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(uvec1, aligned_uvec1, 4); - + /// Default qualifier 32 bit unsigned integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(uvec2, aligned_uvec2, 8); @@ -567,7 +567,7 @@ namespace glm /// Default qualifier 16 bit unsigned integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(u16vec1, aligned_u16vec1, 2); - + /// Default qualifier 16 bit unsigned integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(u16vec2, aligned_u16vec2, 4); @@ -584,7 +584,7 @@ namespace glm /// Default qualifier 32 bit unsigned integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(u32vec1, aligned_u32vec1, 4); - + /// Default qualifier 32 bit unsigned integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(u32vec2, aligned_u32vec2, 8); @@ -601,7 +601,7 @@ namespace glm /// Default qualifier 64 bit unsigned integer aligned scalar type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(u64vec1, aligned_u64vec1, 8); - + /// Default qualifier 64 bit unsigned integer aligned vector of 2 components type. /// @see gtx_type_aligned GLM_ALIGNED_TYPEDEF(u64vec2, aligned_u64vec2, 16); @@ -736,7 +736,7 @@ namespace glm # endif//GLM_FORCE_SINGLE_ONLY ////////////////////// - // Float matrix types + // Float matrix types /// Single-qualifier floating-point aligned 1x1 matrix. /// @see gtx_type_aligned diff --git a/glm/gtx/vector_angle.inl b/glm/gtx/vector_angle.inl index b0eac86e..38f8b8ca 100644 --- a/glm/gtx/vector_angle.inl +++ b/glm/gtx/vector_angle.inl @@ -3,7 +3,7 @@ namespace glm { - template + template GLM_FUNC_QUALIFIER genType angle ( genType const& x, diff --git a/glm/gtx/vector_query.hpp b/glm/gtx/vector_query.hpp index 6560eaa5..52ba57b1 100644 --- a/glm/gtx/vector_query.hpp +++ b/glm/gtx/vector_query.hpp @@ -34,7 +34,7 @@ namespace glm /// @see gtx_vector_query extensions. template GLM_FUNC_DECL bool areCollinear(vec const& v0, vec const& v1, T const& epsilon); - + //! Check whether two vectors are orthogonals. /// @see gtx_vector_query extensions. template @@ -44,7 +44,7 @@ namespace glm /// @see gtx_vector_query extensions. template GLM_FUNC_DECL bool isNormalized(vec const& v, T const& epsilon); - + //! Check whether a vector is null. /// @see gtx_vector_query extensions. template diff --git a/glm/integer.hpp b/glm/integer.hpp index 67065222..fca4e696 100644 --- a/glm/integer.hpp +++ b/glm/integer.hpp @@ -2,14 +2,14 @@ /// @file glm/integer.hpp /// /// @see GLSL 4.20.8 specification, section 8.8 Integer Functions -/// +/// /// @defgroup core_func_integer Integer functions /// @ingroup core -/// +/// /// Include to use these core features. /// -/// These all operate component-wise. The description is per component. -/// The notation [a, b] means the set of bits from bit-number a through bit-number +/// These all operate component-wise. The description is per component. +/// The notation [a, b] means the set of bits from bit-number a through bit-number /// b, inclusive. The lowest-order bit is bit 0. #pragma once @@ -29,7 +29,7 @@ namespace glm /// less than pow(2, 32), or to 1 otherwise. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. - /// + /// /// @see GLSL uaddCarry man page /// @see GLSL 4.20.8 specification, section 8.8 Integer Functions template @@ -43,7 +43,7 @@ namespace glm /// otherwise. The value borrow is set to 0 if x >= y, or to 1 otherwise. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. - /// + /// /// @see GLSL usubBorrow man page /// @see GLSL 4.20.8 specification, section 8.8 Integer Functions template @@ -57,7 +57,7 @@ namespace glm /// The 32 most-significant bits are returned in msb. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. - /// + /// /// @see GLSL umulExtended man page /// @see GLSL 4.20.8 specification, section 8.8 Integer Functions template @@ -70,7 +70,7 @@ namespace glm /// Multiplies 32-bit integers x and y, producing a 64-bit /// result. The 32 least-significant bits are returned in lsb. /// The 32 most-significant bits are returned in msb. - /// + /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// /// @see GLSL imulExtended man page @@ -95,7 +95,7 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T Signed or unsigned integer scalar types. - /// + /// /// @see GLSL bitfieldExtract man page /// @see GLSL 4.20.8 specification, section 8.8 Integer Functions template @@ -126,8 +126,8 @@ namespace glm int Offset, int Bits); - /// Returns the reversal of the bits of value. - /// The bit numbered n of the result will be taken from bit (bits - 1) - n of value, + /// Returns the reversal of the bits of value. + /// The bit numbered n of the result will be taken from bit (bits - 1) - n of value, /// where bits is the total number of bits used to represent value. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. @@ -158,7 +158,7 @@ namespace glm GLM_FUNC_DECL vec bitCount(vec const& v); /// Returns the bit number of the least significant bit set to - /// 1 in the binary representation of value. + /// 1 in the binary representation of value. /// If value is zero, -1 will be returned. /// /// @tparam genIUType Signed or unsigned integer scalar types. @@ -169,7 +169,7 @@ namespace glm GLM_FUNC_DECL int findLSB(genIUType x); /// Returns the bit number of the least significant bit set to - /// 1 in the binary representation of value. + /// 1 in the binary representation of value. /// If value is zero, -1 will be returned. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. @@ -181,7 +181,7 @@ namespace glm GLM_FUNC_DECL vec findLSB(vec const& v); /// Returns the bit number of the most significant bit in the binary representation of value. - /// For positive integers, the result will be the bit number of the most significant bit set to 1. + /// For positive integers, the result will be the bit number of the most significant bit set to 1. /// For negative integers, the result will be the bit number of the most significant /// bit set to 0. For a value of zero or negative one, -1 will be returned. /// @@ -193,7 +193,7 @@ namespace glm GLM_FUNC_DECL int findMSB(genIUType x); /// Returns the bit number of the most significant bit in the binary representation of value. - /// For positive integers, the result will be the bit number of the most significant bit set to 1. + /// For positive integers, the result will be the bit number of the most significant bit set to 1. /// For negative integers, the result will be the bit number of the most significant /// bit set to 0. For a value of zero or negative one, -1 will be returned. /// diff --git a/glm/mat2x2.hpp b/glm/mat2x2.hpp index bcfef4ba..057466d4 100644 --- a/glm/mat2x2.hpp +++ b/glm/mat2x2.hpp @@ -15,35 +15,35 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, lowp> lowp_mat2; - + /// 2 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, mediump> mediump_mat2; - + /// 2 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, highp> highp_mat2; - + /// 2 columns of 2 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, lowp> lowp_mat2x2; - + /// 2 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 2, float, mediump> mediump_mat2x2; - + /// 2 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/mat2x4.hpp b/glm/mat2x4.hpp index d7b1491c..d3c813dc 100644 --- a/glm/mat2x4.hpp +++ b/glm/mat2x4.hpp @@ -15,14 +15,14 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, float, lowp> lowp_mat2x4; - + /// 2 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<2, 4, float, mediump> mediump_mat2x4; - + /// 2 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/mat3x2.hpp b/glm/mat3x2.hpp index 70a7b25e..45007697 100644 --- a/glm/mat3x2.hpp +++ b/glm/mat3x2.hpp @@ -15,14 +15,14 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, float, lowp> lowp_mat3x2; - + /// 3 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 2, float, mediump> mediump_mat3x2; - + /// 3 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/mat3x3.hpp b/glm/mat3x3.hpp index 80e02e28..586d1f0d 100644 --- a/glm/mat3x3.hpp +++ b/glm/mat3x3.hpp @@ -15,35 +15,35 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, lowp> lowp_mat3; - + /// 3 columns of 3 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, mediump> mediump_mat3; - + /// 3 columns of 3 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, highp> highp_mat3; - + /// 3 columns of 3 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, lowp> lowp_mat3x3; - + /// 3 columns of 3 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 3, float, mediump> mediump_mat3x3; - + /// 3 columns of 3 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/mat3x4.hpp b/glm/mat3x4.hpp index 74ab1c43..d1294aea 100644 --- a/glm/mat3x4.hpp +++ b/glm/mat3x4.hpp @@ -15,14 +15,14 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, float, lowp> lowp_mat3x4; - + /// 3 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<3, 4, float, mediump> mediump_mat3x4; - + /// 3 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/mat4x2.hpp b/glm/mat4x2.hpp index 6d64a1f0..c6f8758d 100644 --- a/glm/mat4x2.hpp +++ b/glm/mat4x2.hpp @@ -15,14 +15,14 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, float, lowp> lowp_mat4x2; - + /// 4 columns of 2 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 2, float, mediump> mediump_mat4x2; - + /// 4 columns of 2 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/mat4x3.hpp b/glm/mat4x3.hpp index ee8a8079..88014935 100644 --- a/glm/mat4x3.hpp +++ b/glm/mat4x3.hpp @@ -15,14 +15,14 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, float, lowp> lowp_mat4x3; - + /// 4 columns of 3 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 3, float, mediump> mediump_mat4x3; - + /// 4 columns of 3 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/mat4x4.hpp b/glm/mat4x4.hpp index d1ba41d1..f3019f2a 100644 --- a/glm/mat4x4.hpp +++ b/glm/mat4x4.hpp @@ -15,35 +15,35 @@ namespace glm /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, lowp> lowp_mat4; - + /// 4 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, mediump> mediump_mat4; - + /// 4 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, highp> highp_mat4; - + /// 4 columns of 4 components matrix of low qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, lowp> lowp_mat4x4; - + /// 4 columns of 4 components matrix of medium qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// /// @see GLSL 4.20.8 specification, section 4.1.6 Matrices /// @see GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier typedef mat<4, 4, float, mediump> mediump_mat4x4; - + /// 4 columns of 4 components matrix of high qualifier floating-point numbers. /// There is no guarantee on the actual qualifier. /// diff --git a/glm/matrix.hpp b/glm/matrix.hpp index 2192027d..437e3884 100644 --- a/glm/matrix.hpp +++ b/glm/matrix.hpp @@ -2,16 +2,16 @@ /// @file glm/matrix.hpp /// /// @see GLSL 4.20.8 specification, section 8.6 Matrix Functions -/// +/// /// @defgroup core_func_matrix Matrix functions /// @ingroup core -/// +/// /// Include to use these core features. /// -/// For each of the following built-in matrix functions, there is both a -/// single-qualifier floating point version, where all arguments and return values -/// are single qualifier, and a double-qualifier floating version, where all -/// arguments and return values are double qualifier. Only the single-qualifier +/// For each of the following built-in matrix functions, there is both a +/// single-qualifier floating point version, where all arguments and return values +/// are single qualifier, and a double-qualifier floating version, where all +/// arguments and return values are double qualifier. Only the single-qualifier /// floating point version is shown. #pragma once @@ -95,9 +95,9 @@ namespace glm { /// @addtogroup core_func_matrix /// @{ - /// Multiply matrix x by matrix y component-wise, i.e., + /// Multiply matrix x by matrix y component-wise, i.e., /// result[i][j] is the scalar product of x[i][j] and y[i][j]. - /// + /// /// @tparam C Integer between 1 and 4 included that qualify the number a column /// @tparam R Integer between 1 and 4 included that qualify the number a row /// @tparam T Floating-point or signed integer scalar types @@ -111,7 +111,7 @@ namespace glm { /// Treats the first parameter c as a column vector /// and the second parameter r as a row vector /// and does a linear algebraic matrix multiply c * r. - /// + /// /// @tparam C Integer between 1 and 4 included that qualify the number a column /// @tparam R Integer between 1 and 4 included that qualify the number a row /// @tparam T Floating-point or signed integer scalar types @@ -123,7 +123,7 @@ namespace glm { GLM_FUNC_DECL typename detail::outerProduct_trait::type outerProduct(vec const& c, vec const& r); /// Returns the transposed matrix of x - /// + /// /// @tparam C Integer between 1 and 4 included that qualify the number a column /// @tparam R Integer between 1 and 4 included that qualify the number a row /// @tparam T Floating-point or signed integer scalar types @@ -135,26 +135,26 @@ namespace glm { GLM_FUNC_DECL typename mat::transpose_type transpose(mat const& x); /// Return the determinant of a squared matrix. - /// + /// /// @tparam C Integer between 1 and 4 included that qualify the number a column /// @tparam R Integer between 1 and 4 included that qualify the number a row /// @tparam T Floating-point or signed integer scalar types /// @tparam Q Value from qualifier enum /// /// @see GLSL determinant man page - /// @see GLSL 4.20.8 specification, section 8.6 Matrix Functions + /// @see GLSL 4.20.8 specification, section 8.6 Matrix Functions template GLM_FUNC_DECL T determinant(mat const& m); /// Return the inverse of a squared matrix. - /// + /// /// @tparam C Integer between 1 and 4 included that qualify the number a column /// @tparam R Integer between 1 and 4 included that qualify the number a row /// @tparam T Floating-point or signed integer scalar types /// @tparam Q Value from qualifier enum /// /// @see GLSL inverse man page - /// @see GLSL 4.20.8 specification, section 8.6 Matrix Functions + /// @see GLSL 4.20.8 specification, section 8.6 Matrix Functions template GLM_FUNC_DECL mat inverse(mat const& m); diff --git a/glm/packing.hpp b/glm/packing.hpp index b66ff59d..c509fbfc 100644 --- a/glm/packing.hpp +++ b/glm/packing.hpp @@ -21,145 +21,145 @@ namespace glm /// @addtogroup core_func_packing /// @{ - /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. + /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. /// Then, the results are packed into the returned 32-bit unsigned integer. - /// + /// /// The conversion for component c of v to fixed point is done as follows: - /// packUnorm2x16: round(clamp(c, 0, +1) * 65535.0) - /// - /// The first component of the vector will be written to the least significant bits of the output; + /// packUnorm2x16: round(clamp(c, 0, +1) * 65535.0) + /// + /// The first component of the vector will be written to the least significant bits of the output; /// the last component will be written to the most significant bits. - /// + /// /// @see GLSL packUnorm2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint packUnorm2x16(vec2 const& v); - /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. + /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. /// Then, the results are packed into the returned 32-bit unsigned integer. - /// + /// /// The conversion for component c of v to fixed point is done as follows: /// packSnorm2x16: round(clamp(v, -1, +1) * 32767.0) - /// - /// The first component of the vector will be written to the least significant bits of the output; + /// + /// The first component of the vector will be written to the least significant bits of the output; /// the last component will be written to the most significant bits. - /// + /// /// @see GLSL packSnorm2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint packSnorm2x16(vec2 const& v); - /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. + /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. /// Then, the results are packed into the returned 32-bit unsigned integer. - /// + /// /// The conversion for component c of v to fixed point is done as follows: /// packUnorm4x8: round(clamp(c, 0, +1) * 255.0) - /// - /// The first component of the vector will be written to the least significant bits of the output; + /// + /// The first component of the vector will be written to the least significant bits of the output; /// the last component will be written to the most significant bits. - /// + /// /// @see GLSL packUnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint packUnorm4x8(vec4 const& v); - /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. + /// First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values. /// Then, the results are packed into the returned 32-bit unsigned integer. - /// + /// /// The conversion for component c of v to fixed point is done as follows: - /// packSnorm4x8: round(clamp(c, -1, +1) * 127.0) - /// - /// The first component of the vector will be written to the least significant bits of the output; + /// packSnorm4x8: round(clamp(c, -1, +1) * 127.0) + /// + /// The first component of the vector will be written to the least significant bits of the output; /// the last component will be written to the most significant bits. - /// + /// /// @see GLSL packSnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint packSnorm4x8(vec4 const& v); - /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. + /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: - /// unpackUnorm2x16: f / 65535.0 - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// unpackUnorm2x16: f / 65535.0 + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see GLSL unpackUnorm2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec2 unpackUnorm2x16(uint p); - /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. + /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm2x16: clamp(f / 32767.0, -1, +1) - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see GLSL unpackSnorm2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec2 unpackSnorm2x16(uint p); - /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. + /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackUnorm4x8: f / 255.0 - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see GLSL unpackUnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec4 unpackUnorm4x8(uint p); - /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. + /// First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers. /// Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector. - /// + /// /// The conversion for unpacked fixed-point value f to floating point is done as follows: /// unpackSnorm4x8: clamp(f / 127.0, -1, +1) - /// - /// The first component of the returned vector will be extracted from the least significant bits of the input; + /// + /// The first component of the returned vector will be extracted from the least significant bits of the input; /// the last component will be extracted from the most significant bits. - /// + /// /// @see GLSL unpackSnorm4x8 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec4 unpackSnorm4x8(uint p); - /// Returns a double-qualifier value obtained by packing the components of v into a 64-bit value. - /// If an IEEE 754 Inf or NaN is created, it will not signal, and the resulting floating point value is unspecified. - /// Otherwise, the bit- level representation of v is preserved. - /// The first vector component specifies the 32 least significant bits; + /// Returns a double-qualifier value obtained by packing the components of v into a 64-bit value. + /// If an IEEE 754 Inf or NaN is created, it will not signal, and the resulting floating point value is unspecified. + /// Otherwise, the bit- level representation of v is preserved. + /// The first vector component specifies the 32 least significant bits; /// the second component specifies the 32 most significant bits. - /// + /// /// @see GLSL packDouble2x32 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL double packDouble2x32(uvec2 const& v); - /// Returns a two-component unsigned integer vector representation of v. - /// The bit-level representation of v is preserved. - /// The first component of the vector contains the 32 least significant bits of the double; + /// Returns a two-component unsigned integer vector representation of v. + /// The bit-level representation of v is preserved. + /// The first component of the vector contains the 32 least significant bits of the double; /// the second component consists the 32 most significant bits. - /// + /// /// @see GLSL unpackDouble2x32 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uvec2 unpackDouble2x32(double v); - /// Returns an unsigned integer obtained by converting the components of a two-component floating-point vector - /// to the 16-bit floating-point representation found in the OpenGL Specification, + /// Returns an unsigned integer obtained by converting the components of a two-component floating-point vector + /// to the 16-bit floating-point representation found in the OpenGL Specification, /// and then packing these two 16- bit integers into a 32-bit unsigned integer. - /// The first vector component specifies the 16 least-significant bits of the result; + /// The first vector component specifies the 16 least-significant bits of the result; /// the second component specifies the 16 most-significant bits. - /// + /// /// @see GLSL packHalf2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL uint packHalf2x16(vec2 const& v); - /// Returns a two-component floating-point vector with components obtained by unpacking a 32-bit unsigned integer into a pair of 16-bit values, - /// interpreting those values as 16-bit floating-point numbers according to the OpenGL Specification, + /// Returns a two-component floating-point vector with components obtained by unpacking a 32-bit unsigned integer into a pair of 16-bit values, + /// interpreting those values as 16-bit floating-point numbers according to the OpenGL Specification, /// and converting them to 32-bit floating-point values. - /// The first component of the vector is obtained from the 16 least-significant bits of v; + /// The first component of the vector is obtained from the 16 least-significant bits of v; /// the second component is obtained from the 16 most-significant bits of v. - /// + /// /// @see GLSL unpackHalf2x16 man page /// @see GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions GLM_FUNC_DECL vec2 unpackHalf2x16(uint v); diff --git a/glm/simd/geometric.h b/glm/simd/geometric.h index ca533872..07d7cbcc 100644 --- a/glm/simd/geometric.h +++ b/glm/simd/geometric.h @@ -108,7 +108,7 @@ GLM_FUNC_QUALIFIER __m128 glm_vec4_refract(glm_vec4 I, glm_vec4 N, glm_vec4 eta) glm_vec4 const sub0 = _mm_sub_ps(_mm_set1_ps(1.0f), mul0); glm_vec4 const sub1 = _mm_sub_ps(_mm_set1_ps(1.0f), mul1); glm_vec4 const mul2 = _mm_mul_ps(sub0, sub1); - + if(_mm_movemask_ps(_mm_cmplt_ss(mul2, _mm_set1_ps(0.0f))) == 0) return _mm_set1_ps(0.0f); diff --git a/glm/simd/integer.h b/glm/simd/integer.h index 50fd8248..93814183 100644 --- a/glm/simd/integer.h +++ b/glm/simd/integer.h @@ -55,7 +55,7 @@ GLM_FUNC_QUALIFIER glm_uvec4 glm_i128_interleave(glm_uvec4 x) Reg2 = _mm_slli_epi32(Reg1, 1); Reg2 = _mm_srli_si128(Reg2, 8); Reg1 = _mm_or_si128(Reg1, Reg2); - + return Reg1; } @@ -108,7 +108,7 @@ GLM_FUNC_QUALIFIER glm_uvec4 glm_i128_interleave2(glm_uvec4 x, glm_uvec4 y) Reg2 = _mm_slli_epi32(Reg1, 1); Reg2 = _mm_srli_si128(Reg2, 8); Reg1 = _mm_or_si128(Reg1, Reg2); - + return Reg1; } diff --git a/glm/simd/matrix.h b/glm/simd/matrix.h index 4e3c9a2a..b6c42ea4 100644 --- a/glm/simd/matrix.h +++ b/glm/simd/matrix.h @@ -712,9 +712,9 @@ GLM_FUNC_QUALIFIER void glm_mat4_inverse(glm_vec4 const in[4], glm_vec4 out[4]) __m128 Row1 = _mm_shuffle_ps(Inv2, Inv3, _MM_SHUFFLE(0, 0, 0, 0)); __m128 Row2 = _mm_shuffle_ps(Row0, Row1, _MM_SHUFFLE(2, 0, 2, 0)); - // valType Determinant = m[0][0] * Inverse[0][0] - // + m[0][1] * Inverse[1][0] - // + m[0][2] * Inverse[2][0] + // valType Determinant = m[0][0] * Inverse[0][0] + // + m[0][1] * Inverse[1][0] + // + m[0][2] * Inverse[2][0] // + m[0][3] * Inverse[3][0]; __m128 Det0 = glm_vec4_dot(in[0], Row2); __m128 Rcp0 = _mm_div_ps(_mm_set1_ps(1.0f), Det0); @@ -933,9 +933,9 @@ GLM_FUNC_QUALIFIER void glm_mat4_inverse_lowp(glm_vec4 const in[4], glm_vec4 out __m128 Row1 = _mm_shuffle_ps(Inv2, Inv3, _MM_SHUFFLE(0, 0, 0, 0)); __m128 Row2 = _mm_shuffle_ps(Row0, Row1, _MM_SHUFFLE(2, 0, 2, 0)); - // valType Determinant = m[0][0] * Inverse[0][0] - // + m[0][1] * Inverse[1][0] - // + m[0][2] * Inverse[2][0] + // valType Determinant = m[0][0] * Inverse[0][0] + // + m[0][1] * Inverse[1][0] + // + m[0][2] * Inverse[2][0] // + m[0][3] * Inverse[3][0]; __m128 Det0 = glm_vec4_dot(in[0], Row2); __m128 Rcp0 = _mm_rcp_ps(Det0); @@ -965,7 +965,7 @@ GLM_FUNC_QUALIFIER void glm_mat4_rotate(__m128 const in[4], float Angle, float c // vec<3, T, Q> temp = (valType(1) - c) * axis; __m128 Temp0 = _mm_sub_ps(one, CosA); __m128 Temp1 = _mm_mul_ps(Temp0, AxisC); - + //Rotate[0][0] = c + temp[0] * axis[0]; //Rotate[0][1] = 0 + temp[0] * axis[1] + s * axis[2]; //Rotate[0][2] = 0 + temp[0] * axis[2] - s * axis[1]; diff --git a/glm/trigonometric.hpp b/glm/trigonometric.hpp index 2a33d577..15caadb6 100644 --- a/glm/trigonometric.hpp +++ b/glm/trigonometric.hpp @@ -2,16 +2,16 @@ /// @file glm/trigonometric.hpp /// /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions -/// +/// /// @defgroup core_func_trigonometric Angle and Trigonometry Functions /// @ingroup core -/// +/// /// Include to use these core features. /// -/// Function parameters specified as angle are assumed to be in units of radians. -/// In no case will any of these functions result in a divide by zero error. If +/// Function parameters specified as angle are assumed to be in units of radians. +/// In no case will any of these functions result in a divide by zero error. If /// the divisor of a ratio is 0, then results will be undefined. -/// +/// /// These all operate component-wise. The description is per component. #pragma once @@ -46,7 +46,7 @@ namespace glm template GLM_FUNC_DECL GLM_CONSTEXPR vec degrees(vec const& radians); - /// The standard trigonometric sine function. + /// The standard trigonometric sine function. /// The values returned by this function will range from [-1, 1]. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector @@ -58,7 +58,7 @@ namespace glm template GLM_FUNC_DECL vec sin(vec const& angle); - /// The standard trigonometric cosine function. + /// The standard trigonometric cosine function. /// The values returned by this function will range from [-1, 1]. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector @@ -75,60 +75,60 @@ namespace glm /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL tan man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template GLM_FUNC_DECL vec tan(vec const& angle); - /// Arc sine. Returns an angle whose sine is x. - /// The range of values returned by this function is [-PI/2, PI/2]. + /// Arc sine. Returns an angle whose sine is x. + /// The range of values returned by this function is [-PI/2, PI/2]. /// Results are undefined if |x| > 1. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL asin man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template GLM_FUNC_DECL vec asin(vec const& x); - /// Arc cosine. Returns an angle whose sine is x. - /// The range of values returned by this function is [0, PI]. + /// Arc cosine. Returns an angle whose sine is x. + /// The range of values returned by this function is [0, PI]. /// Results are undefined if |x| > 1. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL acos man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template GLM_FUNC_DECL vec acos(vec const& x); - /// Arc tangent. Returns an angle whose tangent is y/x. - /// The signs of x and y are used to determine what - /// quadrant the angle is in. The range of values returned - /// by this function is [-PI, PI]. Results are undefined - /// if x and y are both 0. + /// Arc tangent. Returns an angle whose tangent is y/x. + /// The signs of x and y are used to determine what + /// quadrant the angle is in. The range of values returned + /// by this function is [-PI, PI]. Results are undefined + /// if x and y are both 0. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL atan man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template GLM_FUNC_DECL vec atan(vec const& y, vec const& x); - /// Arc tangent. Returns an angle whose tangent is y_over_x. + /// Arc tangent. Returns an angle whose tangent is y_over_x. /// The range of values returned by this function is [-PI/2, PI/2]. /// /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL atan man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template @@ -139,7 +139,7 @@ namespace glm /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL sinh man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template @@ -150,7 +150,7 @@ namespace glm /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL cosh man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template @@ -161,7 +161,7 @@ namespace glm /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL tanh man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template @@ -172,7 +172,7 @@ namespace glm /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL asinh man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template @@ -184,7 +184,7 @@ namespace glm /// @tparam L Integer between 1 and 4 included that qualify the dimension of the vector /// @tparam T Floating-point scalar types /// @tparam Q Value from qualifier enum - /// + /// /// @see GLSL acosh man page /// @see GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions template diff --git a/glm/vector_relational.hpp b/glm/vector_relational.hpp index 3ba69693..ed996710 100644 --- a/glm/vector_relational.hpp +++ b/glm/vector_relational.hpp @@ -2,17 +2,17 @@ /// @file glm/vector_relational.hpp /// /// @see GLSL 4.20.8 specification, section 8.7 Vector Relational Functions -/// +/// /// @defgroup core_func_vector_relational Vector Relational Functions /// @ingroup core -/// +/// /// Include to use these core features. /// -/// Relational and equality operators (<, <=, >, >=, ==, !=) are defined to -/// operate on scalars and produce scalar Boolean results. For vector results, -/// use the following built-in functions. -/// -/// In all cases, the sizes of all the input and return vectors for any particular +/// Relational and equality operators (<, <=, >, >=, ==, !=) are defined to +/// operate on scalars and produce scalar Boolean results. For vector results, +/// use the following built-in functions. +/// +/// In all cases, the sizes of all the input and return vectors for any particular /// call must match. #pragma once @@ -26,7 +26,7 @@ namespace glm /// @{ /// Returns the component-wise comparison result of x < y. - /// + /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T A floating-point or integer scalar type. /// @@ -49,7 +49,7 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T A floating-point or integer scalar type. - /// + /// /// @see GLSL greaterThan man page /// @see GLSL 4.20.8 specification, section 8.7 Vector Relational Functions template @@ -59,7 +59,7 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T A floating-point or integer scalar type. - /// + /// /// @see GLSL greaterThanEqual man page /// @see GLSL 4.20.8 specification, section 8.7 Vector Relational Functions template @@ -69,14 +69,14 @@ namespace glm /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T A floating-point, integer or bool scalar type. - /// + /// /// @see GLSL equal man page /// @see GLSL 4.20.8 specification, section 8.7 Vector Relational Functions template GLM_FUNC_DECL vec equal(vec const& x, vec const& y); /// Returns the component-wise comparison of result x != y. - /// + /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. /// @tparam T A floating-point, integer or bool scalar type. /// @@ -88,7 +88,7 @@ namespace glm /// Returns true if any component of x is true. /// /// @tparam L An integer between 1 and 4 included that qualify the dimension of the vector. - /// + /// /// @see GLSL any man page /// @see GLSL 4.20.8 specification, section 8.7 Vector Relational Functions template