diff --git a/glm/detail/type_mat2x2.hpp b/glm/detail/type_mat2x2.hpp index a920d76e..f8e5075f 100644 --- a/glm/detail/type_mat2x2.hpp +++ b/glm/detail/type_mat2x2.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec2.hpp" #include "type_mat.hpp" #include diff --git a/glm/detail/type_mat2x3.hpp b/glm/detail/type_mat2x3.hpp index 117b1b9a..6ca3ee19 100644 --- a/glm/detail/type_mat2x3.hpp +++ b/glm/detail/type_mat2x3.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec2.hpp" #include "type_vec3.hpp" #include "type_mat.hpp" diff --git a/glm/detail/type_mat2x4.hpp b/glm/detail/type_mat2x4.hpp index c5dc0692..5732e5fe 100644 --- a/glm/detail/type_mat2x4.hpp +++ b/glm/detail/type_mat2x4.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec2.hpp" #include "type_vec4.hpp" #include "type_mat.hpp" diff --git a/glm/detail/type_mat3x2.hpp b/glm/detail/type_mat3x2.hpp index e11b4ad2..e2ac5e37 100644 --- a/glm/detail/type_mat3x2.hpp +++ b/glm/detail/type_mat3x2.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec2.hpp" #include "type_vec3.hpp" #include "type_mat.hpp" diff --git a/glm/detail/type_mat3x3.hpp b/glm/detail/type_mat3x3.hpp index aa42dc92..ce860245 100644 --- a/glm/detail/type_mat3x3.hpp +++ b/glm/detail/type_mat3x3.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec3.hpp" #include "type_mat.hpp" #include diff --git a/glm/detail/type_mat3x4.hpp b/glm/detail/type_mat3x4.hpp index c7001a77..24c87c1e 100644 --- a/glm/detail/type_mat3x4.hpp +++ b/glm/detail/type_mat3x4.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec3.hpp" #include "type_vec4.hpp" #include "type_mat.hpp" diff --git a/glm/detail/type_mat4x2.hpp b/glm/detail/type_mat4x2.hpp index 7e562468..2ad84bef 100644 --- a/glm/detail/type_mat4x2.hpp +++ b/glm/detail/type_mat4x2.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec2.hpp" #include "type_vec4.hpp" #include "type_mat.hpp" diff --git a/glm/detail/type_mat4x3.hpp b/glm/detail/type_mat4x3.hpp index 2377e766..7261bf62 100644 --- a/glm/detail/type_mat4x3.hpp +++ b/glm/detail/type_mat4x3.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec3.hpp" #include "type_vec4.hpp" #include "type_mat.hpp" diff --git a/glm/detail/type_mat4x4.hpp b/glm/detail/type_mat4x4.hpp index df71423d..072e9ead 100644 --- a/glm/detail/type_mat4x4.hpp +++ b/glm/detail/type_mat4x4.hpp @@ -3,7 +3,6 @@ #pragma once -#include "../fwd.hpp" #include "type_vec4.hpp" #include "type_mat.hpp" #include diff --git a/glm/detail/type_vec.hpp b/glm/detail/type_vec.hpp deleted file mode 100644 index 91f003b2..00000000 --- a/glm/detail/type_vec.hpp +++ /dev/null @@ -1,7 +0,0 @@ -/// @ref core -/// @file glm/detail/type_vec.hpp - -#pragma once - -#include "qualifier.hpp" -#include "compute_vector_relational.hpp" diff --git a/glm/detail/type_vec.inl b/glm/detail/type_vec.inl deleted file mode 100644 index 2238a1bc..00000000 --- a/glm/detail/type_vec.inl +++ /dev/null @@ -1,2 +0,0 @@ -/// @ref core -/// @file glm/detail/type_vec.inl diff --git a/glm/detail/type_vec1.hpp b/glm/detail/type_vec1.hpp index c3447239..5c0797aa 100644 --- a/glm/detail/type_vec1.hpp +++ b/glm/detail/type_vec1.hpp @@ -3,7 +3,7 @@ #pragma once -#include "type_vec.hpp" +#include "qualifier.hpp" #if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR # include "_swizzle.hpp" #elif GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION diff --git a/glm/detail/type_vec2.hpp b/glm/detail/type_vec2.hpp index 92f83a5c..81a6815e 100644 --- a/glm/detail/type_vec2.hpp +++ b/glm/detail/type_vec2.hpp @@ -3,7 +3,7 @@ #pragma once -#include "type_vec.hpp" +#include "qualifier.hpp" #if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR # include "_swizzle.hpp" #elif GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION diff --git a/glm/detail/type_vec3.hpp b/glm/detail/type_vec3.hpp index 9ee68bc1..e7bf867f 100644 --- a/glm/detail/type_vec3.hpp +++ b/glm/detail/type_vec3.hpp @@ -3,7 +3,7 @@ #pragma once -#include "type_vec.hpp" +#include "qualifier.hpp" #if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR # include "_swizzle.hpp" #elif GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION diff --git a/glm/detail/type_vec3.inl b/glm/detail/type_vec3.inl index f26bf508..5f33e806 100644 --- a/glm/detail/type_vec3.inl +++ b/glm/detail/type_vec3.inl @@ -1,5 +1,7 @@ /// @ref core +#include "compute_vector_relational.hpp" + namespace glm { // -- Implicit basic constructors -- diff --git a/glm/detail/type_vec4.hpp b/glm/detail/type_vec4.hpp index a64398c6..0de476c2 100644 --- a/glm/detail/type_vec4.hpp +++ b/glm/detail/type_vec4.hpp @@ -3,7 +3,7 @@ #pragma once -#include "type_vec.hpp" +#include "qualifier.hpp" #if GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_OPERATOR # include "_swizzle.hpp" #elif GLM_CONFIG_SWIZZLE == GLM_SWIZZLE_FUNCTION diff --git a/glm/detail/type_vec4.inl b/glm/detail/type_vec4.inl index 9ea57bc6..6e7d6f3d 100644 --- a/glm/detail/type_vec4.inl +++ b/glm/detail/type_vec4.inl @@ -1,5 +1,7 @@ /// @ref core +#include "compute_vector_relational.hpp" + namespace glm{ namespace detail { diff --git a/glm/ext/matrix_relational.inl b/glm/ext/matrix_relational.inl index eec20274..6758b8e8 100644 --- a/glm/ext/matrix_relational.inl +++ b/glm/ext/matrix_relational.inl @@ -4,7 +4,6 @@ // Dependency: #include "../vector_relational.hpp" #include "../common.hpp" -#include "../detail/type_vec.hpp" namespace glm { diff --git a/glm/ext/vector_relational.inl b/glm/ext/vector_relational.inl index eec20274..f5119a53 100644 --- a/glm/ext/vector_relational.inl +++ b/glm/ext/vector_relational.inl @@ -4,7 +4,7 @@ // Dependency: #include "../vector_relational.hpp" #include "../common.hpp" -#include "../detail/type_vec.hpp" +#include "../detail/qualifier.hpp" namespace glm { diff --git a/glm/fwd.hpp b/glm/fwd.hpp index 002fa5df..15638095 100644 --- a/glm/fwd.hpp +++ b/glm/fwd.hpp @@ -7,7 +7,6 @@ #include "detail/type_int.hpp" #include "detail/type_float.hpp" -#include "detail/type_vec.hpp" #include "detail/type_mat.hpp" ////////////////////// diff --git a/glm/gtc/epsilon.inl b/glm/gtc/epsilon.inl index 2478cabd..bb2624c8 100644 --- a/glm/gtc/epsilon.inl +++ b/glm/gtc/epsilon.inl @@ -5,7 +5,6 @@ #include "quaternion.hpp" #include "../vector_relational.hpp" #include "../common.hpp" -#include "../detail/type_vec.hpp" namespace glm { diff --git a/glm/gtc/quaternion.hpp b/glm/gtc/quaternion.hpp index ca73c55d..99b4d41b 100644 --- a/glm/gtc/quaternion.hpp +++ b/glm/gtc/quaternion.hpp @@ -436,6 +436,52 @@ namespace glm template GLM_FUNC_DECL vec<4, bool, Q> isinf(tquat const& x); + /// Quaternion of low single-qualifier floating-point numbers. + /// + /// @see gtc_quaternion + typedef tquat lowp_quat; + + /// Quaternion of medium single-qualifier floating-point numbers. + /// + /// @see gtc_quaternion + typedef tquat mediump_quat; + + /// Quaternion of high single-qualifier floating-point numbers. + /// + /// @see gtc_quaternion + typedef tquat highp_quat; + +#if(defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT)) + typedef highp_quat quat; +#elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT)) + typedef mediump_quat quat; +#elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && defined(GLM_PRECISION_LOWP_FLOAT)) + typedef lowp_quat quat; +#elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT)) + /// Quaternion of default single-qualifier floating-point numbers. + typedef highp_quat quat; +#endif + + /// Quaternion of low single-qualifier floating-point numbers. + /// + /// @see gtc_quaternion + typedef lowp_quat lowp_fquat; + + /// Quaternion of medium single-qualifier floating-point numbers. + /// + /// @see gtc_quaternion + typedef mediump_quat mediump_fquat; + + /// Quaternion of high single-qualifier floating-point numbers. + /// + /// @see gtc_quaternion + typedef highp_quat highp_fquat; + + /// Quaternion of default single-qualifier floating-point numbers. + /// + /// @see gtc_quaternion + typedef quat fquat; + /// @} } //namespace glm diff --git a/test/gtc/gtc_epsilon.cpp b/test/gtc/gtc_epsilon.cpp index fcb50ac7..f0e6c8a4 100644 --- a/test/gtc/gtc_epsilon.cpp +++ b/test/gtc/gtc_epsilon.cpp @@ -1,5 +1,6 @@ #include #include +#include #include int test_defined()