From 4dd2b6893e55c619fbd87a69a30673d8a743a731 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Tue, 27 Aug 2013 10:49:04 +0200 Subject: [PATCH 01/10] Removed multiple code path for vector components --- glm/core/type_vec2.hpp | 29 ----------------------------- glm/core/type_vec3.hpp | 29 ----------------------------- glm/core/type_vec4.hpp | 29 ----------------------------- 3 files changed, 87 deletions(-) diff --git a/glm/core/type_vec2.hpp b/glm/core/type_vec2.hpp index 0c6e604f..7ab7fc81 100644 --- a/glm/core/type_vec2.hpp +++ b/glm/core/type_vec2.hpp @@ -51,26 +51,6 @@ namespace detail ////////////////////////////////////// // Data -# if(GLM_COMPONENT == GLM_COMPONENT_CXXMS) - union - { - struct{value_type x, y;}; - struct{value_type r, g;}; - struct{value_type s, t;}; - -# if(defined(GLM_SWIZZLE)) - _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, x, y) - _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, r, g) - _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, s, t) - _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, x, y) - _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, r, g) - _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, s, t) - _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, x, y) - _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, r, g) - _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, s, t) -# endif//(defined(GLM_SWIZZLE)) - }; -# elif(GLM_COMPONENT == GLM_COMPONENT_CXX98) union {value_type x, r, s;}; union {value_type y, g, t;}; @@ -79,15 +59,6 @@ namespace detail GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, P, detail::tvec2, detail::tref2) GLM_SWIZZLE_GEN_VEC_FROM_VEC2(value_type, P, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) -# else //(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW) - value_type x, y; - -# if(defined(GLM_SWIZZLE)) - // Defines all he swizzle operator as functions - GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(value_type, P, detail::tvec2, detail::tref2, x, y) - GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(value_type, P, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4, x, y) -# endif//(defined(GLM_SWIZZLE)) -# endif//GLM_COMPONENT ////////////////////////////////////// // Accesses diff --git a/glm/core/type_vec3.hpp b/glm/core/type_vec3.hpp index fad362d1..dbe9bbd7 100644 --- a/glm/core/type_vec3.hpp +++ b/glm/core/type_vec3.hpp @@ -51,26 +51,6 @@ namespace detail ////////////////////////////////////// // Data -# if(GLM_COMPONENT == GLM_COMPONENT_CXXMS) - union - { - struct{value_type x, y, z;}; - struct{value_type r, g, b;}; - struct{value_type s, t, p;}; - -# if(defined(GLM_SWIZZLE)) - _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, x, y, z) - _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, r, g, b) - _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, s, t, p) - _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, x, y, z) - _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, r, g, b) - _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, s, t, p) - _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, x, y, z) - _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, r, g, b) - _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, s, t, p) -# endif//(defined(GLM_SWIZZLE)) - }; -# elif(GLM_COMPONENT == GLM_COMPONENT_CXX98) union {value_type x, r, s;}; union {value_type y, g, t;}; union {value_type z, b, p;}; @@ -80,15 +60,6 @@ namespace detail GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P, detail::tvec3, detail::tref2, detail::tref3) GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) -# else //(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW) - value_type x, y, z; - -# if(defined(GLM_SWIZZLE)) - // Defines all he swizzle operator as functions - GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, P, detail::tvec3, detail::tref2, detail::tref3, x, y, z) - GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, P, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4, x, y, z) -# endif//(defined(GLM_SWIZZLE)) -# endif//GLM_COMPONENT ////////////////////////////////////// // Accesses diff --git a/glm/core/type_vec4.hpp b/glm/core/type_vec4.hpp index c3197fee..fd192c4f 100644 --- a/glm/core/type_vec4.hpp +++ b/glm/core/type_vec4.hpp @@ -51,26 +51,6 @@ namespace detail ////////////////////////////////////// // Data -# if(GLM_COMPONENT == GLM_COMPONENT_CXXMS) - union - { - struct {value_type r, g, b, a;}; - struct {value_type s, t, p, q;}; - struct {value_type x, y, z, w;}; - -# if(defined(GLM_SWIZZLE)) - _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, x, y, z, w) - _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, r, g, b, a) - _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, s, t, p, q) - _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, x, y, z, w) - _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, r, g, b, a) - _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, s, t, p, q) - _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, x, y, z, w) - _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, r, g, b, a) - _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, s, t, p, q) -# endif//(defined(GLM_SWIZZLE)) - }; -# elif(GLM_COMPONENT == GLM_COMPONENT_CXX98) union {value_type x, r, s;}; union {value_type y, g, t;}; union {value_type z, b, p;}; @@ -81,15 +61,6 @@ namespace detail GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P, detail::tvec4, detail::tref2, detail::tref3, detail::tref4) GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) -# else //(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW) - value_type x, y, z, w; - -# if(defined(GLM_SWIZZLE)) - // Defines all he swizzle operator as functions - GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, P, detail::tvec4, detail::tref2, detail::tref3, detail::tref4, x, y, z, w) - GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, P, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4, x, y, z, w) -# endif//(defined(GLM_SWIZZLE)) -# endif//GLM_COMPONENT ////////////////////////////////////// // Accesses From bc72fafdd9ed15e4082a27ae269357aaaf87eb3f Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Tue, 27 Aug 2013 11:35:58 +0200 Subject: [PATCH 02/10] Removed multiple component selection code --- glm/core/setup.hpp | 49 ++---------------------------------- glm/core/type_vec2.hpp | 7 +++--- glm/core/type_vec3.hpp | 1 - glm/core/type_vec4.hpp | 1 - glm/glm.hpp | 1 - test/core/core_type_vec3.cpp | 11 +------- test/core/core_type_vec4.cpp | 2 -- 7 files changed, 6 insertions(+), 66 deletions(-) diff --git a/glm/core/setup.hpp b/glm/core/setup.hpp index 3502a7d0..d8a314a5 100644 --- a/glm/core/setup.hpp +++ b/glm/core/setup.hpp @@ -605,49 +605,6 @@ # endif//GLM_ARCH #endif//GLM_MESSAGE -/////////////////////////////////////////////////////////////////////////////////////////////////// -// Support check macros - -#define GLM_SUPPORT_ANONYMOUS_UNION() \ - (GLM_LANG & GLM_LANG_CXX98_FLAG) - -#define GLM_SUPPORT_ANONYMOUS_UNION_OF_STRUCTURE() \ - ((GLM_LANG & GLM_LANG_CXXMS_FLAG) && (GLM_COMPILER & GLM_COMPILER_VC)) - -#define GLM_SUPPORT_SWIZZLE_OPERATOR() \ - (defined(GLM_SWIZZLE) && GLM_SUPPORT_ANONYMOUS_UNION_OF_STRUCTURE()) - -#define GLM_SUPPORT_SWIZZLE_FUNCTION() defined(GLM_SWIZZLE) - -/////////////////////////////////////////////////////////////////////////////////////////////////// -// Components - -//#define GLM_FORCE_ONLY_XYZW -#define GLM_COMPONENT_ONLY_XYZW 0 // To disable multiple vector component names access. -#define GLM_COMPONENT_CXX98 1 // -#define GLM_COMPONENT_CXXMS 2 // To use anonymous union to provide multiple component names access for class valType. Visual C++ only. - -#if(GLM_SUPPORT_ANONYMOUS_UNION_OF_STRUCTURE() && !defined(GLM_FORCE_ONLY_XYZW)) -# define GLM_COMPONENT GLM_COMPONENT_CXXMS -#elif(GLM_SUPPORT_ANONYMOUS_UNION() && !defined(GLM_FORCE_ONLY_XYZW)) -# define GLM_COMPONENT GLM_COMPONENT_CXX98 -#else -# define GLM_COMPONENT GLM_COMPONENT_ONLY_XYZW -#endif - -#if(defined(GLM_MESSAGES) && !defined(GLM_MESSAGE_COMPONENT_DISPLAYED)) -# define GLM_MESSAGE_COMPONENT_DISPLAYED -# if(GLM_COMPONENT == GLM_COMPONENT_CXX98) -# pragma message("GLM: x,y,z,w; r,g,b,a; s,t,p,q component names except of half based vector types") -# elif(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW) -# pragma message("GLM: x,y,z,w component names for all vector types") -# elif(GLM_COMPONENT == GLM_COMPONENT_CXXMS) -# pragma message("GLM: x,y,z,w; r,g,b,a; s,t,p,q component names for all vector types") -# else -# error "GLM: GLM_COMPONENT value unknown" -# endif//GLM_MESSAGE_COMPONENT_DISPLAYED -#endif//GLM_MESSAGE - /////////////////////////////////////////////////////////////////////////////////////////////////// // Radians @@ -710,10 +667,8 @@ #if(defined(GLM_MESSAGES) && !defined(GLM_MESSAGE_SWIZZLE_DISPLAYED)) # define GLM_MESSAGE_SWIZZLE_DISPLAYED -# if(GLM_SUPPORT_SWIZZLE_OPERATOR()) +# if defined(GLM_SWIZZLE) # pragma message("GLM: Swizzling operators enabled") -# elif(GLM_SUPPORT_SWIZZLE_FUNCTION()) -# pragma message("GLM: Swizzling operators supported through swizzling functions") # else # pragma message("GLM: Swizzling operators disabled") # endif @@ -736,7 +691,7 @@ # define GLM_RESTRICT # define GLM_RESTRICT_VAR __restrict # define GLM_CONSTEXPR -#elif(((GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_LLVM_GCC)) && (GLM_COMPILER >= GLM_COMPILER_GCC31)) || (GLM_COMPILER & GLM_COMPILER_CLANG)) +#elif(((GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_LLVM_GCC)) && (GLM_COMPILER >= GLM_COMPILER_GCC34)) || (GLM_COMPILER & GLM_COMPILER_CLANG)) # define GLM_DEPRECATED __attribute__((__deprecated__)) # define GLM_ALIGN(x) __attribute__((aligned(x))) # define GLM_ALIGNED_STRUCT(x) struct __attribute__((aligned(x))) diff --git a/glm/core/type_vec2.hpp b/glm/core/type_vec2.hpp index 7ab7fc81..c1ecb5d4 100644 --- a/glm/core/type_vec2.hpp +++ b/glm/core/type_vec2.hpp @@ -22,7 +22,7 @@ /// /// @ref core /// @file glm/core/type_vec2.hpp -/// @date 2008-08-18 / 2011-06-15 +/// @date 2008-08-18 / 2013-08-27 /// @author Christophe Riccio /////////////////////////////////////////////////////////////////////////////////// @@ -54,11 +54,10 @@ namespace detail union {value_type x, r, s;}; union {value_type y, g, t;}; -# if(defined(GLM_SWIZZLE)) - // Defines all he swizzle operator as functions +# ifdef GLM_SWIZZLE GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, P, detail::tvec2, detail::tref2) GLM_SWIZZLE_GEN_VEC_FROM_VEC2(value_type, P, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4) -# endif//(defined(GLM_SWIZZLE)) +# endif//GLM_SWIZZLE ////////////////////////////////////// // Accesses diff --git a/glm/core/type_vec3.hpp b/glm/core/type_vec3.hpp index dbe9bbd7..c64187d2 100644 --- a/glm/core/type_vec3.hpp +++ b/glm/core/type_vec3.hpp @@ -56,7 +56,6 @@ namespace detail union {value_type z, b, p;}; # if(defined(GLM_SWIZZLE)) - // Defines all he swizzle operator as functions GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P, detail::tvec3, detail::tref2, detail::tref3) GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) diff --git a/glm/core/type_vec4.hpp b/glm/core/type_vec4.hpp index fd192c4f..0229adaa 100644 --- a/glm/core/type_vec4.hpp +++ b/glm/core/type_vec4.hpp @@ -57,7 +57,6 @@ namespace detail union {value_type w, a, q;}; # if(defined(GLM_SWIZZLE)) - // Defines all he swizzle operator as functions GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P, detail::tvec4, detail::tref2, detail::tref3, detail::tref4) GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) diff --git a/glm/glm.hpp b/glm/glm.hpp index e4ad5eca..0056e3a6 100644 --- a/glm/glm.hpp +++ b/glm/glm.hpp @@ -134,7 +134,6 @@ //////////////////// // check type sizes #ifndef GLM_STATIC_ASSERT_NULL - GLM_STATIC_ASSERT(sizeof(glm::float16) == 2, "float16 size isn't 2 bytes on this platform"); GLM_STATIC_ASSERT(sizeof(glm::float32) == 4, "float32 size isn't 4 bytes on this platform"); GLM_STATIC_ASSERT(sizeof(glm::float64) == 8, "float64 size isn't 8 bytes on this platform"); #endif//GLM_STATIC_ASSERT_NULL diff --git a/test/core/core_type_vec3.cpp b/test/core/core_type_vec3.cpp index 88e6f4c5..2ae06c2a 100644 --- a/test/core/core_type_vec3.cpp +++ b/test/core/core_type_vec3.cpp @@ -197,7 +197,6 @@ int test_vec3_swizzle3_2() //u = v.rgb; //Illegal //u = v.stp; //Illegal -#if(GLM_SUPPORT_SWIZZLE_OPERATOR()) u = v.xx; Error += (u.x == 1.0f && u.y == 1.0f) ? 0 : 1; u = v.xy; Error += (u.x == 1.0f && u.y == 2.0f) ? 0 : 1; u = v.xz; Error += (u.x == 1.0f && u.y == 3.0f) ? 0 : 1; @@ -243,7 +242,6 @@ int test_vec3_swizzle3_2() v.zx = u; Error += (v.x == 2.0f && v.y == 1.0f && v.z == 1.0f) ? 0 : 1; v.zy = u; Error += (v.x == 2.0f && v.y == 2.0f && v.z == 1.0f) ? 0 : 1; //v.zz = u; //Illegal -#endif//(GLM_SUPPORT_SWIZZLE_OPERATOR()) return Error; } @@ -257,7 +255,6 @@ int test_vec3_swizzle3_3() u = v; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; -#if(GLM_SUPPORT_SWIZZLE_OPERATOR()) u = v.xyz; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; u = v.zyx; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; u.zyx = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; @@ -269,7 +266,7 @@ int test_vec3_swizzle3_3() u = v.stp; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; u = v.pts; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; u.pts = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; -#endif//(GLM_SUPPORT_SWIZZLE_OPERATOR()) + return Error; } @@ -282,7 +279,6 @@ int test_vec3_swizzle_operators() u = glm::vec3(1, 2, 3); v = glm::vec3(10, 20, 30); -#if(GLM_SUPPORT_SWIZZLE_OPERATOR()) // Swizzle, swizzle binary operators q = u.xyz + v.xyz; Error += (q == (u + v)) ? 0 : 1; q = (u.zyx + v.zyx).zyx; Error += (q == (u + v)) ? 0 : 1; @@ -304,7 +300,6 @@ int test_vec3_swizzle_operators() q = (u.xyz * v); Error += (q == (u * v)) ? 0 : 1; q = (u.xxx * v); Error += (q == u.x * v) ? 0 : 1; q = (u.xyz / v); Error += (q == (u / v)) ? 0 : 1; -#endif//(GLM_SUPPORT_SWIZZLE_OPERATOR()) // Compile errors //q = (u.yz * v.xyz); @@ -324,7 +319,6 @@ int test_vec3_swizzle_functions() // glm::dot(u.xy, v.xy); <--- Compile error // glm::dot(u.xy(), v.xy()); <--- Compiles correctly -#if(GLM_SUPPORT_SWIZZLE_OPERATOR()) float r; // vec2 @@ -351,7 +345,6 @@ int test_vec3_swizzle_functions() r = glm::dot(s, t); Error += (int(r) == 300) ? 0 : 1; r = glm::dot(s.xyzw(), t.xyzw()); Error += (int(r) == 300) ? 0 : 1; r = glm::dot(s.xyz(), t.xyz()); Error += (int(r) == 140) ? 0 : 1; -#endif//(GLM_SUPPORT_SWIZZLE_OPERATOR()) return Error; } @@ -360,7 +353,6 @@ int test_vec3_swizzle_partial() { int Error = 0; -#if(GLM_SUPPORT_SWIZZLE_OPERATOR()) glm::vec3 A(1, 2, 3); { @@ -377,7 +369,6 @@ int test_vec3_swizzle_partial() glm::vec3 B(A.xyz); Error += A == B ? 0 : 1; } -#endif//(GLM_SUPPORT_SWIZZLE_OPERATOR()) return Error; } diff --git a/test/core/core_type_vec4.cpp b/test/core/core_type_vec4.cpp index 733ca067..55d7a866 100644 --- a/test/core/core_type_vec4.cpp +++ b/test/core/core_type_vec4.cpp @@ -216,7 +216,6 @@ int test_vec4_swizzle_partial() glm::vec4 A(1, 2, 3, 4); -#if(GLM_SUPPORT_SWIZZLE_OPERATOR()) { glm::vec4 B(A.xy, A.zw); Error += A == B ? 0 : 1; @@ -242,7 +241,6 @@ int test_vec4_swizzle_partial() glm::vec4 B(1.0f, A.yzw); Error += A == B ? 0 : 1; } -#endif//(GLM_SUPPORT_SWIZZLE_OPERATOR()) return Error; } From b3d70c635bd50c9bf18aaec8f28bb4588d460240 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Tue, 27 Aug 2013 12:15:53 +0200 Subject: [PATCH 03/10] Bring back CXXMS and CXX98 code pass for swizzle operators --- glm/core/type_vec2.hpp | 35 ++++++++++++++++++++++++++++------- glm/core/type_vec3.hpp | 37 +++++++++++++++++++++++++++++-------- glm/core/type_vec4.hpp | 39 ++++++++++++++++++++++++++++++--------- 3 files changed, 87 insertions(+), 24 deletions(-) diff --git a/glm/core/type_vec2.hpp b/glm/core/type_vec2.hpp index c1ecb5d4..abd38a83 100644 --- a/glm/core/type_vec2.hpp +++ b/glm/core/type_vec2.hpp @@ -51,13 +51,34 @@ namespace detail ////////////////////////////////////// // Data - union {value_type x, r, s;}; - union {value_type y, g, t;}; - -# ifdef GLM_SWIZZLE - GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, P, detail::tvec2, detail::tref2) - GLM_SWIZZLE_GEN_VEC_FROM_VEC2(value_type, P, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4) -# endif//GLM_SWIZZLE +# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) + union + { + struct{ value_type x, y; }; + struct{ value_type r, g; }; + struct{ value_type s, t; }; + +# if(defined(GLM_SWIZZLE)) + _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, x, y) + _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, r, g) + _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, s, t) + _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, x, y) + _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, r, g) + _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, s, t) + _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, x, y) + _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, r, g) + _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, s, t) +# endif//(defined(GLM_SWIZZLE)) + }; +# else + union {value_type x, r, s;}; + union {value_type y, g, t;}; + +# if(defined(GLM_SWIZZLE)) + GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, P, detail::tvec2, detail::tref2) + GLM_SWIZZLE_GEN_VEC_FROM_VEC2(value_type, P, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4) +# endif//(defined(GLM_SWIZZLE)) +# endif//GLM_LANG ////////////////////////////////////// // Accesses diff --git a/glm/core/type_vec3.hpp b/glm/core/type_vec3.hpp index c64187d2..ddfe8865 100644 --- a/glm/core/type_vec3.hpp +++ b/glm/core/type_vec3.hpp @@ -51,14 +51,35 @@ namespace detail ////////////////////////////////////// // Data - union {value_type x, r, s;}; - union {value_type y, g, t;}; - union {value_type z, b, p;}; - -# if(defined(GLM_SWIZZLE)) - GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P, detail::tvec3, detail::tref2, detail::tref3) - GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4) -# endif//(defined(GLM_SWIZZLE)) +# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) + union + { + struct{ value_type x, y, z; }; + struct{ value_type r, g, b; }; + struct{ value_type s, t, p; }; + +# if(defined(GLM_SWIZZLE)) + _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, x, y, z) + _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, r, g, b) + _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, s, t, p) + _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, x, y, z) + _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, r, g, b) + _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, s, t, p) + _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, x, y, z) + _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, r, g, b) + _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, s, t, p) +# endif//(defined(GLM_SWIZZLE)) + }; +# else + union { value_type x, r, s; }; + union { value_type y, g, t; }; + union { value_type z, b, p; }; + +# if(defined(GLM_SWIZZLE)) + GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P, detail::tvec3, detail::tref2, detail::tref3) + GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4) +# endif//(defined(GLM_SWIZZLE)) +# endif//GLM_LANG ////////////////////////////////////// // Accesses diff --git a/glm/core/type_vec4.hpp b/glm/core/type_vec4.hpp index 0229adaa..f1cd1d17 100644 --- a/glm/core/type_vec4.hpp +++ b/glm/core/type_vec4.hpp @@ -51,15 +51,36 @@ namespace detail ////////////////////////////////////// // Data - union {value_type x, r, s;}; - union {value_type y, g, t;}; - union {value_type z, b, p;}; - union {value_type w, a, q;}; - -# if(defined(GLM_SWIZZLE)) - GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P, detail::tvec4, detail::tref2, detail::tref3, detail::tref4) - GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4) -# endif//(defined(GLM_SWIZZLE)) +# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) + union + { + struct { value_type r, g, b, a; }; + struct { value_type s, t, p, q; }; + struct { value_type x, y, z, w;}; + +# if(defined(GLM_SWIZZLE)) + _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, x, y, z, w) + _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, r, g, b, a) + _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, s, t, p, q) + _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, x, y, z, w) + _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, r, g, b, a) + _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, s, t, p, q) + _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, x, y, z, w) + _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, r, g, b, a) + _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, s, t, p, q) +# endif//(defined(GLM_SWIZZLE)) + }; +# else + union { value_type x, r, s; }; + union { value_type y, g, t; }; + union { value_type z, b, p; }; + union { value_type w, a, q; }; + +# if(defined(GLM_SWIZZLE)) + GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P, detail::tvec4, detail::tref2, detail::tref3, detail::tref4) + GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4) +# endif//(defined(GLM_SWIZZLE)) +# endif//GLM_LANG ////////////////////////////////////// // Accesses From 4b7862b3145bc7ebda0608a1465da546d6be2420 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Tue, 27 Aug 2013 13:50:55 +0200 Subject: [PATCH 04/10] Fixed issues with ref types for l-value swizzle operators --- glm/core/type_vec2.hpp | 22 ++-- glm/core/type_vec3.hpp | 22 ++-- glm/core/type_vec4.hpp | 22 ++-- glm/gtc/swizzle.hpp | 105 +++++++++++----- test/core/core_type_vec3.cpp | 232 ++++++++++++++++++----------------- test/core/core_type_vec4.cpp | 2 + 6 files changed, 224 insertions(+), 181 deletions(-) diff --git a/glm/core/type_vec2.hpp b/glm/core/type_vec2.hpp index abd38a83..96dd9778 100644 --- a/glm/core/type_vec2.hpp +++ b/glm/core/type_vec2.hpp @@ -51,24 +51,22 @@ namespace detail ////////////////////////////////////// // Data -# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) +# if((GLM_LANG & GLM_LANG_CXXMS_FLAG) && defined(GLM_SWIZZLE)) union { struct{ value_type x, y; }; struct{ value_type r, g; }; struct{ value_type s, t; }; -# if(defined(GLM_SWIZZLE)) - _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, x, y) - _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, r, g) - _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, s, t) - _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, x, y) - _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, r, g) - _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, s, t) - _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, x, y) - _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, r, g) - _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, s, t) -# endif//(defined(GLM_SWIZZLE)) + _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, x, y) + _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, r, g) + _GLM_SWIZZLE2_2_MEMBERS(T, P, tvec2, s, t) + _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, x, y) + _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, r, g) + _GLM_SWIZZLE2_3_MEMBERS(T, P, tvec3, s, t) + _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, x, y) + _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, r, g) + _GLM_SWIZZLE2_4_MEMBERS(T, P, tvec4, s, t) }; # else union {value_type x, r, s;}; diff --git a/glm/core/type_vec3.hpp b/glm/core/type_vec3.hpp index ddfe8865..9cf882ad 100644 --- a/glm/core/type_vec3.hpp +++ b/glm/core/type_vec3.hpp @@ -51,24 +51,22 @@ namespace detail ////////////////////////////////////// // Data -# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) +# if((GLM_LANG & GLM_LANG_CXXMS_FLAG) && defined(GLM_SWIZZLE)) union { struct{ value_type x, y, z; }; struct{ value_type r, g, b; }; struct{ value_type s, t, p; }; -# if(defined(GLM_SWIZZLE)) - _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, x, y, z) - _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, r, g, b) - _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, s, t, p) - _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, x, y, z) - _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, r, g, b) - _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, s, t, p) - _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, x, y, z) - _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, r, g, b) - _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, s, t, p) -# endif//(defined(GLM_SWIZZLE)) + _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, x, y, z) + _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, r, g, b) + _GLM_SWIZZLE3_2_MEMBERS(T, P, tvec2, s, t, p) + _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, x, y, z) + _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, r, g, b) + _GLM_SWIZZLE3_3_MEMBERS(T, P, tvec3, s, t, p) + _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, x, y, z) + _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, r, g, b) + _GLM_SWIZZLE3_4_MEMBERS(T, P, tvec4, s, t, p) }; # else union { value_type x, r, s; }; diff --git a/glm/core/type_vec4.hpp b/glm/core/type_vec4.hpp index f1cd1d17..373c9ec5 100644 --- a/glm/core/type_vec4.hpp +++ b/glm/core/type_vec4.hpp @@ -51,24 +51,22 @@ namespace detail ////////////////////////////////////// // Data -# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) +# if((GLM_LANG & GLM_LANG_CXXMS_FLAG) && defined(GLM_SWIZZLE)) union { struct { value_type r, g, b, a; }; struct { value_type s, t, p, q; }; struct { value_type x, y, z, w;}; -# if(defined(GLM_SWIZZLE)) - _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, x, y, z, w) - _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, r, g, b, a) - _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, s, t, p, q) - _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, x, y, z, w) - _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, r, g, b, a) - _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, s, t, p, q) - _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, x, y, z, w) - _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, r, g, b, a) - _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, s, t, p, q) -# endif//(defined(GLM_SWIZZLE)) + _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, x, y, z, w) + _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, r, g, b, a) + _GLM_SWIZZLE4_2_MEMBERS(T, P, tvec2, s, t, p, q) + _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, x, y, z, w) + _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, r, g, b, a) + _GLM_SWIZZLE4_3_MEMBERS(T, P, tvec3, s, t, p, q) + _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, x, y, z, w) + _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, r, g, b, a) + _GLM_SWIZZLE4_4_MEMBERS(T, P, tvec4, s, t, p, q) }; # else union { value_type x, r, s; }; diff --git a/glm/gtc/swizzle.hpp b/glm/gtc/swizzle.hpp index f40db631..e111b4ec 100644 --- a/glm/gtc/swizzle.hpp +++ b/glm/gtc/swizzle.hpp @@ -91,16 +91,26 @@ namespace glm vecType & v, comp x, comp y, comp z, comp w); -# define static_swizzle1_const(TYPE, SIZE) \ +# define static_swizzle1_const_precision(TYPE, SIZE, PRECISION) \ template \ - GLM_FUNC_QUALIFIER TYPE swizzle(detail::tvec##SIZE const & v) \ + GLM_FUNC_QUALIFIER TYPE swizzle(detail::tvec##SIZE const & v) \ {return v[x];} -# define static_swizzle1_ref(TYPE, SIZE) \ +# define static_swizzle1_ref_precision(TYPE, SIZE, PRECISION) \ template \ - GLM_FUNC_QUALIFIER TYPE& swizzle(detail::tvec##SIZE & v) \ + GLM_FUNC_QUALIFIER TYPE& swizzle(detail::tvec##SIZE & v) \ {return v[x];} +# define static_swizzle1_const(TYPE, SIZE) \ + static_swizzle1_const_precision(TYPE, SIZE, glm::highp) \ + static_swizzle1_const_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle1_const_precision(TYPE, SIZE, glm::lowp) + +# define static_swizzle1_ref(TYPE, SIZE) \ + static_swizzle1_ref_precision(TYPE, SIZE, glm::highp) \ + static_swizzle1_ref_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle1_ref_precision(TYPE, SIZE, glm::lowp) + static_swizzle1_ref(detail::float32, 2) static_swizzle1_ref(detail::float32, 3) static_swizzle1_ref(detail::float32, 4) @@ -150,24 +160,38 @@ namespace glm {return TYPE(v[x], v[y], v[z], v[w]);} */ -# define static_swizzle2_const(TYPE, SIZE) \ +# define static_swizzle2_const_precision(TYPE, SIZE, PRECISION) \ template \ - GLM_FUNC_QUALIFIER detail::tvec2 swizzle( \ - detail::tvec##SIZE const & v) \ - {return detail::tvec2(v[x], v[y]);} + GLM_FUNC_QUALIFIER detail::tvec2 swizzle( \ + detail::tvec##SIZE const & v) \ + {return detail::tvec2(v[x], v[y]); } -# define static_swizzle3_const(TYPE, SIZE) \ +# define static_swizzle3_const_precision(TYPE, SIZE, PRECISION) \ template \ - GLM_FUNC_QUALIFIER detail::tvec3 swizzle( \ - detail::tvec##SIZE const & v) \ - {return detail::tvec3(v[x], v[y], v[z]);} + GLM_FUNC_QUALIFIER detail::tvec3 swizzle( \ + detail::tvec##SIZE const & v) \ + {return detail::tvec3(v[x], v[y], v[z]); } -# define static_swizzle4_const(TYPE, SIZE) \ +# define static_swizzle4_const_precision(TYPE, SIZE, PRECISION) \ template \ - GLM_FUNC_QUALIFIER detail::tvec4 swizzle( \ - detail::tvec##SIZE const & v) \ - {return detail::tvec4(v[x], v[y], v[z], v[w]);} + GLM_FUNC_QUALIFIER detail::tvec4 swizzle( \ + detail::tvec##SIZE const & v) \ + {return detail::tvec4(v[x], v[y], v[z], v[w]); } +# define static_swizzle2_const(TYPE, SIZE) \ + static_swizzle2_const_precision(TYPE, SIZE, glm::highp) \ + static_swizzle2_const_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle2_const_precision(TYPE, SIZE, glm::lowp) + +# define static_swizzle3_const(TYPE, SIZE) \ + static_swizzle3_const_precision(TYPE, SIZE, glm::highp) \ + static_swizzle3_const_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle3_const_precision(TYPE, SIZE, glm::lowp) + +# define static_swizzle4_const(TYPE, SIZE) \ + static_swizzle4_const_precision(TYPE, SIZE, glm::highp) \ + static_swizzle4_const_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle4_const_precision(TYPE, SIZE, glm::lowp) static_swizzle2_const(glm::f32, 2) static_swizzle2_const(glm::f32, 3) @@ -268,23 +292,38 @@ namespace glm static_swizzle4_const(glm::u64, 3) static_swizzle4_const(glm::u64, 4) -# define static_swizzle2_ref(TYPE, SIZE) \ - template \ - GLM_FUNC_QUALIFIER glm::detail::tref2 swizzle( \ - detail::tvec##SIZE & v) \ - {return glm::detail::tref2(v[x], v[y]);} - -# define static_swizzle3_ref(TYPE, SIZE) \ - template \ - GLM_FUNC_QUALIFIER glm::detail::tref3 swizzle( \ - detail::tvec##SIZE & v) \ - {return glm::detail::tref3(v[x], v[y], v[z]);} - -# define static_swizzle4_ref(TYPE, SIZE) \ - template \ - GLM_FUNC_QUALIFIER glm::detail::tref4 swizzle( \ - detail::tvec##SIZE & v) \ - {return glm::detail::tref4(v[x], v[y], v[z], v[w]);} +# define static_swizzle2_ref_precision(TYPE, SIZE, PRECISION) \ + template \ + GLM_FUNC_QUALIFIER glm::detail::tref2 swizzle( \ + detail::tvec##SIZE & v) \ + {return glm::detail::tref2(v[x], v[y]); } + +# define static_swizzle3_ref_precision(TYPE, SIZE, PRECISION) \ + template \ + GLM_FUNC_QUALIFIER glm::detail::tref3 swizzle( \ + detail::tvec##SIZE & v) \ + {return glm::detail::tref3(v[x], v[y], v[z]); } + +# define static_swizzle4_ref_precision(TYPE, SIZE, PRECISION) \ + template \ + GLM_FUNC_QUALIFIER glm::detail::tref4 swizzle( \ + detail::tvec##SIZE & v) \ + {return glm::detail::tref4(v[x], v[y], v[z], v[w]); } + +# define static_swizzle2_ref(TYPE, SIZE) \ + static_swizzle2_ref_precision(TYPE, SIZE, glm::highp) \ + static_swizzle2_ref_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle2_ref_precision(TYPE, SIZE, glm::lowp) + +# define static_swizzle3_ref(TYPE, SIZE) \ + static_swizzle3_ref_precision(TYPE, SIZE, glm::highp) \ + static_swizzle3_ref_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle3_ref_precision(TYPE, SIZE, glm::lowp) + +# define static_swizzle4_ref(TYPE, SIZE) \ + static_swizzle4_ref_precision(TYPE, SIZE, glm::highp) \ + static_swizzle4_ref_precision(TYPE, SIZE, glm::mediump) \ + static_swizzle4_ref_precision(TYPE, SIZE, glm::lowp) static_swizzle2_ref(glm::f32, 2) static_swizzle2_ref(glm::f32, 3) diff --git a/test/core/core_type_vec3.cpp b/test/core/core_type_vec3.cpp index 2ae06c2a..f3a3259d 100644 --- a/test/core/core_type_vec3.cpp +++ b/test/core/core_type_vec3.cpp @@ -2,7 +2,7 @@ // OpenGL Mathematics Copyright (c) 2005 - 2013 G-Truc Creation (www.g-truc.net) /////////////////////////////////////////////////////////////////////////////////////////////////// // Created : 2008-08-31 -// Updated : 2011-09-19 +// Updated : 2013-08-27 // Licence : This source is under MIT License // File : test/core/type_vec3.cpp /////////////////////////////////////////////////////////////////////////////////////////////////// @@ -187,125 +187,131 @@ int test_vec3_size() int test_vec3_swizzle3_2() { - int Error = 0; - - glm::vec3 v(1, 2, 3); - glm::vec2 u; - - // Can not assign a vec3 swizzle to a vec2 - //u = v.xyz; //Illegal - //u = v.rgb; //Illegal - //u = v.stp; //Illegal - - u = v.xx; Error += (u.x == 1.0f && u.y == 1.0f) ? 0 : 1; - u = v.xy; Error += (u.x == 1.0f && u.y == 2.0f) ? 0 : 1; - u = v.xz; Error += (u.x == 1.0f && u.y == 3.0f) ? 0 : 1; - u = v.yx; Error += (u.x == 2.0f && u.y == 1.0f) ? 0 : 1; - u = v.yy; Error += (u.x == 2.0f && u.y == 2.0f) ? 0 : 1; - u = v.yz; Error += (u.x == 2.0f && u.y == 3.0f) ? 0 : 1; - u = v.zx; Error += (u.x == 3.0f && u.y == 1.0f) ? 0 : 1; - u = v.zy; Error += (u.x == 3.0f && u.y == 2.0f) ? 0 : 1; - u = v.zz; Error += (u.x == 3.0f && u.y == 3.0f) ? 0 : 1; - - u = v.rr; Error += (u.r == 1.0f && u.g == 1.0f) ? 0 : 1; - u = v.rg; Error += (u.r == 1.0f && u.g == 2.0f) ? 0 : 1; - u = v.rb; Error += (u.r == 1.0f && u.g == 3.0f) ? 0 : 1; - u = v.gr; Error += (u.r == 2.0f && u.g == 1.0f) ? 0 : 1; - u = v.gg; Error += (u.r == 2.0f && u.g == 2.0f) ? 0 : 1; - u = v.gb; Error += (u.r == 2.0f && u.g == 3.0f) ? 0 : 1; - u = v.br; Error += (u.r == 3.0f && u.g == 1.0f) ? 0 : 1; - u = v.bg; Error += (u.r == 3.0f && u.g == 2.0f) ? 0 : 1; - u = v.bb; Error += (u.r == 3.0f && u.g == 3.0f) ? 0 : 1; - - u = v.ss; Error += (u.s == 1.0f && u.t == 1.0f) ? 0 : 1; - u = v.st; Error += (u.s == 1.0f && u.t == 2.0f) ? 0 : 1; - u = v.sp; Error += (u.s == 1.0f && u.t == 3.0f) ? 0 : 1; - u = v.ts; Error += (u.s == 2.0f && u.t == 1.0f) ? 0 : 1; - u = v.tt; Error += (u.s == 2.0f && u.t == 2.0f) ? 0 : 1; - u = v.tp; Error += (u.s == 2.0f && u.t == 3.0f) ? 0 : 1; - u = v.ps; Error += (u.s == 3.0f && u.t == 1.0f) ? 0 : 1; - u = v.pt; Error += (u.s == 3.0f && u.t == 2.0f) ? 0 : 1; - u = v.pp; Error += (u.s == 3.0f && u.t == 3.0f) ? 0 : 1; - // Mixed member aliases are not valid - //u = v.rx; //Illegal - //u = v.sy; //Illegal - - - u = glm::vec2(1, 2); - v = glm::vec3(1, 2, 3); - //v.xx = u; //Illegal - v.xy = u; Error += (v.x == 1.0f && v.y == 2.0f && v.z == 3.0f) ? 0 : 1; - v.xz = u; Error += (v.x == 1.0f && v.y == 2.0f && v.z == 2.0f) ? 0 : 1; - v.yx = u; Error += (v.x == 2.0f && v.y == 1.0f && v.z == 2.0f) ? 0 : 1; - //v.yy = u; //Illegal - v.yz = u; Error += (v.x == 2.0f && v.y == 1.0f && v.z == 2.0f) ? 0 : 1; - v.zx = u; Error += (v.x == 2.0f && v.y == 1.0f && v.z == 1.0f) ? 0 : 1; - v.zy = u; Error += (v.x == 2.0f && v.y == 2.0f && v.z == 1.0f) ? 0 : 1; - //v.zz = u; //Illegal - - return Error; + int Error = 0; + + glm::vec3 v(1, 2, 3); + glm::vec2 u; + +# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) + // Can not assign a vec3 swizzle to a vec2 + //u = v.xyz; //Illegal + //u = v.rgb; //Illegal + //u = v.stp; //Illegal + + u = v.xx; Error += (u.x == 1.0f && u.y == 1.0f) ? 0 : 1; + u = v.xy; Error += (u.x == 1.0f && u.y == 2.0f) ? 0 : 1; + u = v.xz; Error += (u.x == 1.0f && u.y == 3.0f) ? 0 : 1; + u = v.yx; Error += (u.x == 2.0f && u.y == 1.0f) ? 0 : 1; + u = v.yy; Error += (u.x == 2.0f && u.y == 2.0f) ? 0 : 1; + u = v.yz; Error += (u.x == 2.0f && u.y == 3.0f) ? 0 : 1; + u = v.zx; Error += (u.x == 3.0f && u.y == 1.0f) ? 0 : 1; + u = v.zy; Error += (u.x == 3.0f && u.y == 2.0f) ? 0 : 1; + u = v.zz; Error += (u.x == 3.0f && u.y == 3.0f) ? 0 : 1; + + u = v.rr; Error += (u.r == 1.0f && u.g == 1.0f) ? 0 : 1; + u = v.rg; Error += (u.r == 1.0f && u.g == 2.0f) ? 0 : 1; + u = v.rb; Error += (u.r == 1.0f && u.g == 3.0f) ? 0 : 1; + u = v.gr; Error += (u.r == 2.0f && u.g == 1.0f) ? 0 : 1; + u = v.gg; Error += (u.r == 2.0f && u.g == 2.0f) ? 0 : 1; + u = v.gb; Error += (u.r == 2.0f && u.g == 3.0f) ? 0 : 1; + u = v.br; Error += (u.r == 3.0f && u.g == 1.0f) ? 0 : 1; + u = v.bg; Error += (u.r == 3.0f && u.g == 2.0f) ? 0 : 1; + u = v.bb; Error += (u.r == 3.0f && u.g == 3.0f) ? 0 : 1; + + u = v.ss; Error += (u.s == 1.0f && u.t == 1.0f) ? 0 : 1; + u = v.st; Error += (u.s == 1.0f && u.t == 2.0f) ? 0 : 1; + u = v.sp; Error += (u.s == 1.0f && u.t == 3.0f) ? 0 : 1; + u = v.ts; Error += (u.s == 2.0f && u.t == 1.0f) ? 0 : 1; + u = v.tt; Error += (u.s == 2.0f && u.t == 2.0f) ? 0 : 1; + u = v.tp; Error += (u.s == 2.0f && u.t == 3.0f) ? 0 : 1; + u = v.ps; Error += (u.s == 3.0f && u.t == 1.0f) ? 0 : 1; + u = v.pt; Error += (u.s == 3.0f && u.t == 2.0f) ? 0 : 1; + u = v.pp; Error += (u.s == 3.0f && u.t == 3.0f) ? 0 : 1; + // Mixed member aliases are not valid + //u = v.rx; //Illegal + //u = v.sy; //Illegal + + u = glm::vec2(1, 2); + v = glm::vec3(1, 2, 3); + //v.xx = u; //Illegal + v.xy = u; Error += (v.x == 1.0f && v.y == 2.0f && v.z == 3.0f) ? 0 : 1; + v.xz = u; Error += (v.x == 1.0f && v.y == 2.0f && v.z == 2.0f) ? 0 : 1; + v.yx = u; Error += (v.x == 2.0f && v.y == 1.0f && v.z == 2.0f) ? 0 : 1; + //v.yy = u; //Illegal + v.yz = u; Error += (v.x == 2.0f && v.y == 1.0f && v.z == 2.0f) ? 0 : 1; + v.zx = u; Error += (v.x == 2.0f && v.y == 1.0f && v.z == 1.0f) ? 0 : 1; + v.zy = u; Error += (v.x == 2.0f && v.y == 2.0f && v.z == 1.0f) ? 0 : 1; + //v.zz = u; //Illegal + +# endif//GLM_LANG + + return Error; } int test_vec3_swizzle3_3() { - int Error = 0; - - glm::vec3 v(1, 2, 3); - glm::vec3 u; - - u = v; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; - - u = v.xyz; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; - u = v.zyx; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; - u.zyx = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; - - u = v.rgb; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; - u = v.bgr; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; - u.bgr = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; - - u = v.stp; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; - u = v.pts; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; - u.pts = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; - - return Error; + int Error = 0; + + glm::vec3 v(1, 2, 3); + glm::vec3 u; + +# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) + u = v; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; + + u = v.xyz; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; + u = v.zyx; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; + u.zyx = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; + + u = v.rgb; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; + u = v.bgr; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; + u.bgr = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; + + u = v.stp; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; + u = v.pts; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; + u.pts = v; Error += (u.x == 3.0f && u.y == 2.0f && u.z == 1.0f) ? 0 : 1; +# endif//GLM_LANG + + return Error; } int test_vec3_swizzle_operators() { - int Error = 0; - - glm::vec3 q, u, v; - - u = glm::vec3(1, 2, 3); - v = glm::vec3(10, 20, 30); - - // Swizzle, swizzle binary operators - q = u.xyz + v.xyz; Error += (q == (u + v)) ? 0 : 1; - q = (u.zyx + v.zyx).zyx; Error += (q == (u + v)) ? 0 : 1; - q = (u.xyz - v.xyz); Error += (q == (u - v)) ? 0 : 1; - q = (u.xyz * v.xyz); Error += (q == (u * v)) ? 0 : 1; - q = (u.xxx * v.xxx); Error += (q == glm::vec3(u.x * v.x)) ? 0 : 1; - q = (u.xyz / v.xyz); Error += (q == (u / v)) ? 0 : 1; - - // vec, swizzle binary operators - q = u + v.xyz; Error += (q == (u + v)) ? 0 : 1; - q = (u - v.xyz); Error += (q == (u - v)) ? 0 : 1; - q = (u * v.xyz); Error += (q == (u * v)) ? 0 : 1; - q = (u * v.xxx); Error += (q == v.x * u) ? 0 : 1; - q = (u / v.xyz); Error += (q == (u / v)) ? 0 : 1; - - // swizzle,vec binary operators - q = u.xyz + v; Error += (q == (u + v)) ? 0 : 1; - q = (u.xyz - v); Error += (q == (u - v)) ? 0 : 1; - q = (u.xyz * v); Error += (q == (u * v)) ? 0 : 1; - q = (u.xxx * v); Error += (q == u.x * v) ? 0 : 1; - q = (u.xyz / v); Error += (q == (u / v)) ? 0 : 1; - - // Compile errors - //q = (u.yz * v.xyz); - //q = (u * v.xy); - - return Error; + int Error = 0; + + glm::vec3 q, u, v; + + u = glm::vec3(1, 2, 3); + v = glm::vec3(10, 20, 30); + +# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) + // Swizzle, swizzle binary operators + q = u.xyz + v.xyz; Error += (q == (u + v)) ? 0 : 1; + q = (u.zyx + v.zyx).zyx; Error += (q == (u + v)) ? 0 : 1; + q = (u.xyz - v.xyz); Error += (q == (u - v)) ? 0 : 1; + q = (u.xyz * v.xyz); Error += (q == (u * v)) ? 0 : 1; + q = (u.xxx * v.xxx); Error += (q == glm::vec3(u.x * v.x)) ? 0 : 1; + q = (u.xyz / v.xyz); Error += (q == (u / v)) ? 0 : 1; + + // vec, swizzle binary operators + q = u + v.xyz; Error += (q == (u + v)) ? 0 : 1; + q = (u - v.xyz); Error += (q == (u - v)) ? 0 : 1; + q = (u * v.xyz); Error += (q == (u * v)) ? 0 : 1; + q = (u * v.xxx); Error += (q == v.x * u) ? 0 : 1; + q = (u / v.xyz); Error += (q == (u / v)) ? 0 : 1; + + // swizzle,vec binary operators + q = u.xyz + v; Error += (q == (u + v)) ? 0 : 1; + q = (u.xyz - v); Error += (q == (u - v)) ? 0 : 1; + q = (u.xyz * v); Error += (q == (u * v)) ? 0 : 1; + q = (u.xxx * v); Error += (q == u.x * v) ? 0 : 1; + q = (u.xyz / v); Error += (q == (u / v)) ? 0 : 1; +# endif//GLM_LANG + + // Compile errors + //q = (u.yz * v.xyz); + //q = (u * v.xy); + + return Error; } int test_vec3_swizzle_functions() @@ -355,6 +361,7 @@ int test_vec3_swizzle_partial() glm::vec3 A(1, 2, 3); +# if(GLM_LANG & GLM_LANG_CXXMS_FLAG) { glm::vec3 B(A.xy, 3.0f); Error += A == B ? 0 : 1; @@ -369,6 +376,7 @@ int test_vec3_swizzle_partial() glm::vec3 B(A.xyz); Error += A == B ? 0 : 1; } +# endif//GLM_LANG return Error; } diff --git a/test/core/core_type_vec4.cpp b/test/core/core_type_vec4.cpp index 55d7a866..3f5fd5cc 100644 --- a/test/core/core_type_vec4.cpp +++ b/test/core/core_type_vec4.cpp @@ -216,6 +216,7 @@ int test_vec4_swizzle_partial() glm::vec4 A(1, 2, 3, 4); +# if((GLM_LANG & GLM_LANG_CXXMS_FLAG) && defined(GLM_SWIZZLE)) { glm::vec4 B(A.xy, A.zw); Error += A == B ? 0 : 1; @@ -241,6 +242,7 @@ int test_vec4_swizzle_partial() glm::vec4 B(1.0f, A.yzw); Error += A == B ? 0 : 1; } +# endif//GLM_LANG return Error; } From c6062115c69766db7f3bdb1e4f8e123b1674e923 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Wed, 28 Aug 2013 00:13:02 +0200 Subject: [PATCH 05/10] Removed l-value swizzle operators --- glm/core/type_vec2.hpp | 2 +- glm/core/type_vec3.hpp | 2 +- glm/core/type_vec4.hpp | 2 +- glm/gtc/swizzle.hpp | 1 - readme.txt | 1 + 5 files changed, 4 insertions(+), 4 deletions(-) diff --git a/glm/core/type_vec2.hpp b/glm/core/type_vec2.hpp index 96dd9778..2a08d1eb 100644 --- a/glm/core/type_vec2.hpp +++ b/glm/core/type_vec2.hpp @@ -73,7 +73,7 @@ namespace detail union {value_type y, g, t;}; # if(defined(GLM_SWIZZLE)) - GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, P, detail::tvec2, detail::tref2) + //GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, P, detail::tvec2, detail::tref2) GLM_SWIZZLE_GEN_VEC_FROM_VEC2(value_type, P, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) # endif//GLM_LANG diff --git a/glm/core/type_vec3.hpp b/glm/core/type_vec3.hpp index 9cf882ad..c193f0f9 100644 --- a/glm/core/type_vec3.hpp +++ b/glm/core/type_vec3.hpp @@ -74,7 +74,7 @@ namespace detail union { value_type z, b, p; }; # if(defined(GLM_SWIZZLE)) - GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P, detail::tvec3, detail::tref2, detail::tref3) + //GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, P, detail::tvec3, detail::tref2, detail::tref3) GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) # endif//GLM_LANG diff --git a/glm/core/type_vec4.hpp b/glm/core/type_vec4.hpp index 373c9ec5..11d79366 100644 --- a/glm/core/type_vec4.hpp +++ b/glm/core/type_vec4.hpp @@ -75,7 +75,7 @@ namespace detail union { value_type w, a, q; }; # if(defined(GLM_SWIZZLE)) - GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P, detail::tvec4, detail::tref2, detail::tref3, detail::tref4) + //GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, P, detail::tvec4, detail::tref2, detail::tref3, detail::tref4) GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4) # endif//(defined(GLM_SWIZZLE)) # endif//GLM_LANG diff --git a/glm/gtc/swizzle.hpp b/glm/gtc/swizzle.hpp index e111b4ec..b1849b71 100644 --- a/glm/gtc/swizzle.hpp +++ b/glm/gtc/swizzle.hpp @@ -393,7 +393,6 @@ namespace glm static_swizzle4_ref(glm::u16, 4) static_swizzle4_ref(glm::u32, 4) static_swizzle4_ref(glm::u64, 4) - /// @} }//namespace glm diff --git a/readme.txt b/readme.txt index 74bcd8e5..c15dc6d5 100644 --- a/readme.txt +++ b/readme.txt @@ -51,6 +51,7 @@ GLM 0.9.5.0: 2013-XX-XX - Removed GTX_ocl_type extension - Fixed post increment and decrement operators - Fixed perspective with zNear == 0 (#71) +- Removed l-value swizzle operators ================================================================================ GLM 0.9.4.6: 2013-08-XX From 76730803596157ee2b794bda30e0ade135c4efcd Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Wed, 28 Aug 2013 11:12:21 +0200 Subject: [PATCH 06/10] Clean up unused defines --- glm/core/setup.hpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/glm/core/setup.hpp b/glm/core/setup.hpp index b6dcdfbe..25b4212b 100644 --- a/glm/core/setup.hpp +++ b/glm/core/setup.hpp @@ -133,8 +133,6 @@ // GCC defines #define GLM_COMPILER_GCC 0x02000000 -#define GLM_COMPILER_GCC_LLVM 0x02000001 -#define GLM_COMPILER_GCC_CLANG 0x02000002 #define GLM_COMPILER_GCC34 0x02000050 #define GLM_COMPILER_GCC35 0x02000060 #define GLM_COMPILER_GCC40 0x02000070 From 635d2d0eca4cfe9000c291dc389619ec4988c93a Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Sun, 1 Sep 2013 18:22:47 +0200 Subject: [PATCH 07/10] Fixed GTC_packing build --- glm/gtc/packing.inl | 4 +- test/core/core_func_swizzle.cpp | 48 ++-- test/gtc/gtc_packing.cpp | 416 ++++++++++++++------------------ 3 files changed, 213 insertions(+), 255 deletions(-) diff --git a/glm/gtc/packing.inl b/glm/gtc/packing.inl index d67cad09..07a62855 100644 --- a/glm/gtc/packing.inl +++ b/glm/gtc/packing.inl @@ -304,7 +304,7 @@ namespace detail GLM_FUNC_QUALIFIER uint8 packUnorm1x8(float const & v) { - int8 Scaled(round(clamp(v ,-1.0f, 1.0f) * 255.0f)); + int8 Scaled(int8(round(clamp(v, -1.0f, 1.0f) * 255.0f))); detail::unorm1x8 Packing; Packing.data = Scaled; return Packing.pack; @@ -337,7 +337,7 @@ namespace detail GLM_FUNC_QUALIFIER uint8 packSnorm1x8(float const & v) { - glm::int8 Scaled(round(clamp(v ,-1.0f, 1.0f) * 127.0f)); + glm::int8 Scaled(int8(round(clamp(v ,-1.0f, 1.0f) * 127.0f))); detail::snorm1x8 Packing; Packing.data = Scaled; return Packing.pack; diff --git a/test/core/core_func_swizzle.cpp b/test/core/core_func_swizzle.cpp index 20351dd7..f88fe273 100644 --- a/test/core/core_func_swizzle.cpp +++ b/test/core/core_func_swizzle.cpp @@ -7,24 +7,11 @@ // File : test/core/core_func_swizzle.cpp /////////////////////////////////////////////////////////////////////////////////////////////////// -#ifndef GLM_FORCE_ONLY_XYZW -# define GLM_FORCE_ONLY_XYZW -#endif -//#ifndef GLM_FORCE_PURE -//# define GLM_FORCE_PURE -//#endif -#ifndef GLM_MESSAGES -# define GLM_MESSAGES -#endif -#ifndef GLM_SWIZZLE -# define GLM_SWIZZLE -#endif -#ifndef GLM_FORCE_CXX98 -# define GLM_FORCE_CXX98 -#endif +#define GLM_MESSAGES +#define GLM_SWIZZLE #include -int test_vec2_swizzle() +int test_ivec2_swizzle() { int Error = 0; @@ -39,7 +26,7 @@ int test_vec2_swizzle() return Error; } -int test_vec3_swizzle() +int test_ivec3_swizzle() { int Error = 0; @@ -54,7 +41,7 @@ int test_vec3_swizzle() return Error; } -int test_vec4_swizzle() +int test_ivec4_swizzle() { int Error = 0; @@ -69,12 +56,33 @@ int test_vec4_swizzle() return Error; } +int test_vec4_swizzle() +{ + int Error = 0; + + glm::vec4 A(1, 2, 3, 4); + glm::vec4 B = A.xyzw(); + glm::vec4 C(0); + C.xyzw = B.xyzw; + + float f = glm::dot(C.wzyx(), C.xyzw()); + + Error += A == B ? 0 : 1; + Error += A == C ? 0 : 1; + + + static_assert(sizeof(int) <= 4, "Test"); + return Error; +} + int main() { int Error = 0; - Error += test_vec2_swizzle(); - Error += test_vec3_swizzle(); + Error += test_ivec2_swizzle(); + Error += test_ivec3_swizzle(); + Error += test_ivec4_swizzle(); + Error += test_vec4_swizzle(); return Error; diff --git a/test/gtc/gtc_packing.cpp b/test/gtc/gtc_packing.cpp index b3d83739..8c79b422 100644 --- a/test/gtc/gtc_packing.cpp +++ b/test/gtc/gtc_packing.cpp @@ -31,287 +31,237 @@ #include #include -void print_bits(glm::half const & s) -{ - union - { - glm::detail::hdata h; - unsigned short i; - } uif; - - uif.h = s._data(); - - printf("f16: "); - for(std::size_t j = sizeof(s) * 8; j > 0; --j) - { - if(j == 10 || j == 15) - printf(" "); - printf("%d", (uif.i & (1 << (j - 1))) ? 1 : 0); - } -} - void print_bits(float const & s) { - union - { - float f; - unsigned int i; - } uif; - - uif.f = s; - - printf("f32: "); - for(std::size_t j = sizeof(s) * 8; j > 0; --j) - { - if(j == 23 || j == 31) - printf(" "); - printf("%d", (uif.i & (1 << (j - 1))) ? 1 : 0); - } + union + { + float f; + unsigned int i; + } uif; + + uif.f = s; + + printf("f32: "); + for(std::size_t j = sizeof(s) * 8; j > 0; --j) + { + if(j == 23 || j == 31) + printf(" "); + printf("%d", (uif.i & (1 << (j - 1))) ? 1 : 0); + } } void print_10bits(glm::uint const & s) { - printf("10b: "); - for(std::size_t j = 10; j > 0; --j) - { - if(j == 5) - printf(" "); - printf("%d", (s & (1 << (j - 1))) ? 1 : 0); - } + printf("10b: "); + for(std::size_t j = 10; j > 0; --j) + { + if(j == 5) + printf(" "); + printf("%d", (s & (1 << (j - 1))) ? 1 : 0); + } } void print_11bits(glm::uint const & s) { - printf("11b: "); - for(std::size_t j = 11; j > 0; --j) - { - if(j == 6) - printf(" "); - printf("%d", (s & (1 << (j - 1))) ? 1 : 0); - } + printf("11b: "); + for(std::size_t j = 11; j > 0; --j) + { + if(j == 6) + printf(" "); + printf("%d", (s & (1 << (j - 1))) ? 1 : 0); + } } void print_value(float const & s) { - printf("%2.5f, ", s); - print_bits(s); - printf(", "); - print_bits(glm::half(s)); -// printf(", "); -// print_11bits(detail::floatTo11bit(s)); -// printf(", "); -// print_10bits(detail::floatTo10bit(s)); - printf("\n"); -} - -int test_half() -{ - int Error = 0; - - print_value(0.0f); - print_value(0.1f); - print_value(0.2f); - print_value(0.3f); - print_value(0.4f); - print_value(0.5f); - print_value(0.6f); - print_value(1.0f); - print_value(1.1f); - print_value(1.2f); - print_value(1.3f); - print_value(1.4f); - print_value(1.5f); - print_value(1.6f); - print_value(2.0f); - print_value(2.1f); - print_value(2.2f); - print_value(2.3f); - print_value(2.4f); - print_value(2.5f); - print_value(2.6f); - - return Error; + printf("%2.5f, ", s); + print_bits(s); + printf(", "); +// print_11bits(detail::floatTo11bit(s)); +// printf(", "); +// print_10bits(detail::floatTo10bit(s)); + printf("\n"); } int test_Half1x16() { - int Error = 0; - - std::vector Tests; - Tests.push_back(0.0f); - Tests.push_back(1.0f); - Tests.push_back(-1.0f); - Tests.push_back(2.0f); - Tests.push_back(-2.0f); - Tests.push_back(1.9f); - - for(std::size_t i = 0; i < Tests.size(); ++i) - { - glm::uint32 p0 = glm::packHalf1x16(Tests[i]); - float v0 = glm::unpackHalf1x16(p0); - glm::uint32 p1 = glm::packHalf1x16(v0); - float v1 = glm::unpackHalf1x16(p0); - Error += (v0 == v1) ? 0 : 1; - } - - return Error; + int Error = 0; + + std::vector Tests; + Tests.push_back(0.0f); + Tests.push_back(1.0f); + Tests.push_back(-1.0f); + Tests.push_back(2.0f); + Tests.push_back(-2.0f); + Tests.push_back(1.9f); + + for(std::size_t i = 0; i < Tests.size(); ++i) + { + glm::uint32 p0 = glm::packHalf1x16(Tests[i]); + float v0 = glm::unpackHalf1x16(p0); + glm::uint32 p1 = glm::packHalf1x16(v0); + float v1 = glm::unpackHalf1x16(p0); + Error += (v0 == v1) ? 0 : 1; + } + + return Error; } int test_Half4x16() { - int Error = 0; - - std::vector Tests; - Tests.push_back(glm::vec4(1.0)); - Tests.push_back(glm::vec4(0.0)); - Tests.push_back(glm::vec4(2.0)); - Tests.push_back(glm::vec4(0.1)); - Tests.push_back(glm::vec4(0.5)); - Tests.push_back(glm::vec4(-0.9)); - - for(std::size_t i = 0; i < Tests.size(); ++i) - { - glm::uint64 p0 = glm::packHalf4x16(Tests[i]); - glm::vec4 v0 = glm::unpackHalf4x16(p0); - glm::uint64 p1 = glm::packHalf4x16(v0); - glm::vec4 v1 = glm::unpackHalf4x16(p0); - Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; - } - - return Error; + int Error = 0; + + std::vector Tests; + Tests.push_back(glm::vec4(1.0)); + Tests.push_back(glm::vec4(0.0)); + Tests.push_back(glm::vec4(2.0)); + Tests.push_back(glm::vec4(0.1)); + Tests.push_back(glm::vec4(0.5)); + Tests.push_back(glm::vec4(-0.9)); + + for(std::size_t i = 0; i < Tests.size(); ++i) + { + glm::uint64 p0 = glm::packHalf4x16(Tests[i]); + glm::vec4 v0 = glm::unpackHalf4x16(p0); + glm::uint64 p1 = glm::packHalf4x16(v0); + glm::vec4 v1 = glm::unpackHalf4x16(p0); + Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; + } + + return Error; } int test_I3x10_1x2() { - int Error = 0; - - std::vector Tests; - Tests.push_back(glm::ivec4(0)); - Tests.push_back(glm::ivec4(1)); - Tests.push_back(glm::ivec4(-1)); - Tests.push_back(glm::ivec4(2)); - Tests.push_back(glm::ivec4(-2)); - Tests.push_back(glm::ivec4(3)); - - for(std::size_t i = 0; i < Tests.size(); ++i) - { - glm::uint32 p0 = glm::packI3x10_1x2(Tests[i]); - glm::ivec4 v0 = glm::unpackI3x10_1x2(p0); - glm::uint32 p1 = glm::packI3x10_1x2(v0); - glm::ivec4 v1 = glm::unpackI3x10_1x2(p0); - Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; - } - - return Error; + int Error = 0; + + std::vector Tests; + Tests.push_back(glm::ivec4(0)); + Tests.push_back(glm::ivec4(1)); + Tests.push_back(glm::ivec4(-1)); + Tests.push_back(glm::ivec4(2)); + Tests.push_back(glm::ivec4(-2)); + Tests.push_back(glm::ivec4(3)); + + for(std::size_t i = 0; i < Tests.size(); ++i) + { + glm::uint32 p0 = glm::packI3x10_1x2(Tests[i]); + glm::ivec4 v0 = glm::unpackI3x10_1x2(p0); + glm::uint32 p1 = glm::packI3x10_1x2(v0); + glm::ivec4 v1 = glm::unpackI3x10_1x2(p0); + Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; + } + + return Error; } int test_U3x10_1x2() { - int Error = 0; - - std::vector Tests; - Tests.push_back(glm::uvec4(0)); - Tests.push_back(glm::uvec4(1)); - Tests.push_back(glm::uvec4(2)); - Tests.push_back(glm::uvec4(3)); - Tests.push_back(glm::uvec4(4)); - Tests.push_back(glm::uvec4(5)); - - for(std::size_t i = 0; i < Tests.size(); ++i) - { - glm::uint32 p0 = glm::packU3x10_1x2(Tests[i]); - glm::uvec4 v0 = glm::unpackU3x10_1x2(p0); - glm::uint32 p1 = glm::packU3x10_1x2(v0); - glm::uvec4 v1 = glm::unpackU3x10_1x2(p0); - Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; - } - - return Error; + int Error = 0; + + std::vector Tests; + Tests.push_back(glm::uvec4(0)); + Tests.push_back(glm::uvec4(1)); + Tests.push_back(glm::uvec4(2)); + Tests.push_back(glm::uvec4(3)); + Tests.push_back(glm::uvec4(4)); + Tests.push_back(glm::uvec4(5)); + + for(std::size_t i = 0; i < Tests.size(); ++i) + { + glm::uint32 p0 = glm::packU3x10_1x2(Tests[i]); + glm::uvec4 v0 = glm::unpackU3x10_1x2(p0); + glm::uint32 p1 = glm::packU3x10_1x2(v0); + glm::uvec4 v1 = glm::unpackU3x10_1x2(p0); + Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; + } + + return Error; } int test_Snorm3x10_1x2() { - int Error = 0; - - std::vector Tests; - Tests.push_back(glm::vec4(1.0)); - Tests.push_back(glm::vec4(0.0)); - Tests.push_back(glm::vec4(2.0)); - Tests.push_back(glm::vec4(0.1)); - Tests.push_back(glm::vec4(0.5)); - Tests.push_back(glm::vec4(0.9)); - - for(std::size_t i = 0; i < Tests.size(); ++i) - { - glm::uint32 p0 = glm::packSnorm3x10_1x2(Tests[i]); - glm::vec4 v0 = glm::unpackSnorm3x10_1x2(p0); - glm::uint32 p1 = glm::packSnorm3x10_1x2(v0); - glm::vec4 v1 = glm::unpackSnorm3x10_1x2(p0); - Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; - } - - return Error; + int Error = 0; + + std::vector Tests; + Tests.push_back(glm::vec4(1.0)); + Tests.push_back(glm::vec4(0.0)); + Tests.push_back(glm::vec4(2.0)); + Tests.push_back(glm::vec4(0.1)); + Tests.push_back(glm::vec4(0.5)); + Tests.push_back(glm::vec4(0.9)); + + for(std::size_t i = 0; i < Tests.size(); ++i) + { + glm::uint32 p0 = glm::packSnorm3x10_1x2(Tests[i]); + glm::vec4 v0 = glm::unpackSnorm3x10_1x2(p0); + glm::uint32 p1 = glm::packSnorm3x10_1x2(v0); + glm::vec4 v1 = glm::unpackSnorm3x10_1x2(p0); + Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; + } + + return Error; } int test_Unorm3x10_1x2() { - int Error = 0; - - std::vector Tests; - Tests.push_back(glm::vec4(1.0)); - Tests.push_back(glm::vec4(0.0)); - Tests.push_back(glm::vec4(2.0)); - Tests.push_back(glm::vec4(0.1)); - Tests.push_back(glm::vec4(0.5)); - Tests.push_back(glm::vec4(0.9)); - - for(std::size_t i = 0; i < Tests.size(); ++i) - { - glm::uint32 p0 = glm::packSnorm3x10_1x2(Tests[i]); - glm::vec4 v0 = glm::unpackSnorm3x10_1x2(p0); - glm::uint32 p1 = glm::packSnorm3x10_1x2(v0); - glm::vec4 v1 = glm::unpackSnorm3x10_1x2(p0); - Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; - } - - return Error; + int Error = 0; + + std::vector Tests; + Tests.push_back(glm::vec4(1.0)); + Tests.push_back(glm::vec4(0.0)); + Tests.push_back(glm::vec4(2.0)); + Tests.push_back(glm::vec4(0.1)); + Tests.push_back(glm::vec4(0.5)); + Tests.push_back(glm::vec4(0.9)); + + for(std::size_t i = 0; i < Tests.size(); ++i) + { + glm::uint32 p0 = glm::packSnorm3x10_1x2(Tests[i]); + glm::vec4 v0 = glm::unpackSnorm3x10_1x2(p0); + glm::uint32 p1 = glm::packSnorm3x10_1x2(v0); + glm::vec4 v1 = glm::unpackSnorm3x10_1x2(p0); + Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; + } + + return Error; } int test_F2x11_1x10() { - int Error = 0; - - std::vector Tests; - Tests.push_back(glm::vec3(1.0)); - Tests.push_back(glm::vec3(0.0)); - Tests.push_back(glm::vec3(2.0)); - Tests.push_back(glm::vec3(0.1)); - Tests.push_back(glm::vec3(0.5)); - Tests.push_back(glm::vec3(0.9)); - - for(std::size_t i = 0; i < Tests.size(); ++i) - { - glm::uint32 p0 = glm::packF2x11_1x10(Tests[i]); - glm::vec3 v0 = glm::unpackF2x11_1x10(p0); - glm::uint32 p1 = glm::packF2x11_1x10(v0); - glm::vec3 v1 = glm::unpackF2x11_1x10(p0); - Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; - } - - return Error; + int Error = 0; + + std::vector Tests; + Tests.push_back(glm::vec3(1.0)); + Tests.push_back(glm::vec3(0.0)); + Tests.push_back(glm::vec3(2.0)); + Tests.push_back(glm::vec3(0.1)); + Tests.push_back(glm::vec3(0.5)); + Tests.push_back(glm::vec3(0.9)); + + for(std::size_t i = 0; i < Tests.size(); ++i) + { + glm::uint32 p0 = glm::packF2x11_1x10(Tests[i]); + glm::vec3 v0 = glm::unpackF2x11_1x10(p0); + glm::uint32 p1 = glm::packF2x11_1x10(v0); + glm::vec3 v1 = glm::unpackF2x11_1x10(p0); + Error += glm::all(glm::equal(v0, v1)) ? 0 : 1; + } + + return Error; } int main() { int Error(0); - Error += test_F2x11_1x10(); - Error += test_Snorm3x10_1x2(); - Error += test_Unorm3x10_1x2(); - Error += test_I3x10_1x2(); - Error += test_U3x10_1x2(); - Error += test_Half1x16(); - Error += test_U3x10_1x2(); + Error += test_F2x11_1x10(); + Error += test_Snorm3x10_1x2(); + Error += test_Unorm3x10_1x2(); + Error += test_I3x10_1x2(); + Error += test_U3x10_1x2(); + Error += test_Half1x16(); + Error += test_U3x10_1x2(); return Error; } From 16b9c79accf2e7a3a47a7313f1571008a94cb856 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Mon, 2 Sep 2013 00:16:41 +0200 Subject: [PATCH 08/10] Added implicit conversion of types with different precision qualifier --- glm/core/type_mat2x2.hpp | 5 ++-- glm/core/type_mat2x2.inl | 11 ++++++- glm/core/type_mat2x3.hpp | 4 ++- glm/core/type_mat2x3.inl | 11 ++++++- glm/core/type_mat2x4.hpp | 4 ++- glm/core/type_mat2x4.inl | 11 ++++++- glm/core/type_mat3x2.hpp | 2 ++ glm/core/type_mat3x2.inl | 12 +++++++- glm/core/type_mat3x3.hpp | 2 ++ glm/core/type_mat3x3.inl | 12 +++++++- glm/core/type_mat3x4.hpp | 4 ++- glm/core/type_mat3x4.inl | 12 +++++++- glm/core/type_mat4x2.hpp | 4 ++- glm/core/type_mat4x2.inl | 24 +++++++++------ glm/core/type_mat4x3.hpp | 4 ++- glm/core/type_mat4x3.inl | 30 ++++++++++--------- glm/core/type_mat4x4.hpp | 4 ++- glm/core/type_mat4x4.inl | 15 +++++++++- glm/core/type_vec1.hpp | 6 ++-- glm/core/type_vec1.inl | 19 ++++++++---- glm/core/type_vec2.hpp | 6 ++-- glm/core/type_vec2.inl | 20 +++++++++---- glm/core/type_vec3.hpp | 6 ++-- glm/core/type_vec3.inl | 21 +++++++++---- glm/core/type_vec4.hpp | 16 +++++----- glm/core/type_vec4.inl | 52 ++++++++++++++++++++------------- glm/gtx/simd_vec4.hpp | 2 +- glm/gtx/simd_vec4.inl | 2 +- test/gtc/gtc_type_precision.cpp | 19 ++++++++++++ 29 files changed, 253 insertions(+), 87 deletions(-) diff --git a/glm/core/type_mat2x2.hpp b/glm/core/type_mat2x2.hpp index 638e848b..38ec7214 100644 --- a/glm/core/type_mat2x2.hpp +++ b/glm/core/type_mat2x2.hpp @@ -65,8 +65,9 @@ namespace detail ////////////////////////////////////// // Constructors GLM_FUNC_DECL tmat2x2(); - GLM_FUNC_DECL tmat2x2( - tmat2x2 const & m); + GLM_FUNC_DECL tmat2x2(tmat2x2 const & m); + template + GLM_FUNC_DECL tmat2x2(tmat2x2 const & m); GLM_FUNC_DECL explicit tmat2x2( ctor Null); diff --git a/glm/core/type_mat2x2.inl b/glm/core/type_mat2x2.inl index 12e40677..2271ff7e 100644 --- a/glm/core/type_mat2x2.inl +++ b/glm/core/type_mat2x2.inl @@ -92,6 +92,15 @@ namespace detail this->value[1] = m.value[1]; } + template + template + GLM_FUNC_QUALIFIER tmat2x2::tmat2x2( + tmat2x2 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + } + template GLM_FUNC_QUALIFIER tmat2x2::tmat2x2 ( @@ -133,7 +142,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat2x2::tmat2x2 diff --git a/glm/core/type_mat2x3.hpp b/glm/core/type_mat2x3.hpp index 57576039..f1d8f9cb 100644 --- a/glm/core/type_mat2x3.hpp +++ b/glm/core/type_mat2x3.hpp @@ -58,7 +58,9 @@ namespace detail public: // Constructors GLM_FUNC_DECL tmat2x3(); - GLM_FUNC_DECL tmat2x3(tmat2x3 const & m); + GLM_FUNC_DECL tmat2x3(tmat2x3 const & m); + template + GLM_FUNC_DECL tmat2x3(tmat2x3 const & m); GLM_FUNC_DECL explicit tmat2x3( ctor); diff --git a/glm/core/type_mat2x3.inl b/glm/core/type_mat2x3.inl index 4f6d1934..c0343dae 100644 --- a/glm/core/type_mat2x3.inl +++ b/glm/core/type_mat2x3.inl @@ -92,6 +92,15 @@ namespace detail this->value[1] = m.value[1]; } + template + template + GLM_FUNC_QUALIFIER tmat2x3::tmat2x3( + tmat2x3 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + } + template GLM_FUNC_QUALIFIER tmat2x3::tmat2x3 ( @@ -132,7 +141,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat2x3::tmat2x3 diff --git a/glm/core/type_mat2x4.hpp b/glm/core/type_mat2x4.hpp index a3218da5..30d48b9b 100644 --- a/glm/core/type_mat2x4.hpp +++ b/glm/core/type_mat2x4.hpp @@ -58,7 +58,9 @@ namespace detail public: // Constructors GLM_FUNC_DECL tmat2x4(); - GLM_FUNC_DECL tmat2x4(tmat2x4 const & m); + GLM_FUNC_DECL tmat2x4(tmat2x4 const & m); + template + GLM_FUNC_DECL tmat2x4(tmat2x4 const & m); GLM_FUNC_DECL explicit tmat2x4( ctor); diff --git a/glm/core/type_mat2x4.inl b/glm/core/type_mat2x4.inl index 75069041..f0cd3ad1 100644 --- a/glm/core/type_mat2x4.inl +++ b/glm/core/type_mat2x4.inl @@ -94,6 +94,15 @@ namespace detail this->value[1] = m.value[1]; } + template + template + GLM_FUNC_QUALIFIER tmat2x4::tmat2x4( + tmat2x4 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + } + template GLM_FUNC_QUALIFIER tmat2x4::tmat2x4 ( @@ -135,7 +144,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat2x4::tmat2x4 diff --git a/glm/core/type_mat3x2.hpp b/glm/core/type_mat3x2.hpp index 22d5a7e1..afbf9f03 100644 --- a/glm/core/type_mat3x2.hpp +++ b/glm/core/type_mat3x2.hpp @@ -59,6 +59,8 @@ namespace detail // Constructors GLM_FUNC_DECL tmat3x2(); GLM_FUNC_DECL tmat3x2(tmat3x2 const & m); + template + GLM_FUNC_DECL tmat3x2(tmat3x2 const & m); GLM_FUNC_DECL explicit tmat3x2( ctor); diff --git a/glm/core/type_mat3x2.inl b/glm/core/type_mat3x2.inl index ad174850..624f7587 100644 --- a/glm/core/type_mat3x2.inl +++ b/glm/core/type_mat3x2.inl @@ -94,6 +94,16 @@ namespace detail this->value[2] = m.value[2]; } + template + template + GLM_FUNC_QUALIFIER tmat3x2::tmat3x2( + tmat3x2 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + this->value[2] = m.value[2]; + } + template GLM_FUNC_QUALIFIER tmat3x2::tmat3x2 ( @@ -139,7 +149,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat3x2::tmat3x2 diff --git a/glm/core/type_mat3x3.hpp b/glm/core/type_mat3x3.hpp index 2384e35e..4fa8bff4 100644 --- a/glm/core/type_mat3x3.hpp +++ b/glm/core/type_mat3x3.hpp @@ -65,6 +65,8 @@ namespace detail // Constructors GLM_FUNC_DECL tmat3x3(); GLM_FUNC_DECL tmat3x3(tmat3x3 const & m); + template + GLM_FUNC_DECL tmat3x3(tmat3x3 const & m); GLM_FUNC_DECL explicit tmat3x3( ctor Null); diff --git a/glm/core/type_mat3x3.inl b/glm/core/type_mat3x3.inl index d36518f3..c9ef9dc0 100644 --- a/glm/core/type_mat3x3.inl +++ b/glm/core/type_mat3x3.inl @@ -103,6 +103,16 @@ namespace detail ) {} + template + template + GLM_FUNC_QUALIFIER tmat3x3::tmat3x3( + tmat3x3 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + this->value[2] = m.value[2]; + } + template GLM_FUNC_QUALIFIER tmat3x3::tmat3x3 ( @@ -142,7 +152,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat3x3::tmat3x3 diff --git a/glm/core/type_mat3x4.hpp b/glm/core/type_mat3x4.hpp index fb0242a2..2d72d2fb 100644 --- a/glm/core/type_mat3x4.hpp +++ b/glm/core/type_mat3x4.hpp @@ -58,7 +58,9 @@ namespace detail public: // Constructors GLM_FUNC_DECL tmat3x4(); - GLM_FUNC_DECL tmat3x4(tmat3x4 const & m); + GLM_FUNC_DECL tmat3x4(tmat3x4 const & m); + template + GLM_FUNC_DECL tmat3x4(tmat3x4 const & m); GLM_FUNC_DECL explicit tmat3x4( ctor Null); diff --git a/glm/core/type_mat3x4.inl b/glm/core/type_mat3x4.inl index 2a3839cf..e014da41 100644 --- a/glm/core/type_mat3x4.inl +++ b/glm/core/type_mat3x4.inl @@ -94,6 +94,16 @@ namespace detail this->value[2] = m.value[2]; } + template + template + GLM_FUNC_QUALIFIER tmat3x4::tmat3x4( + tmat3x4 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + this->value[2] = m.value[2]; + } + template GLM_FUNC_QUALIFIER tmat3x4::tmat3x4 ( @@ -140,7 +150,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat3x4::tmat3x4 diff --git a/glm/core/type_mat4x2.hpp b/glm/core/type_mat4x2.hpp index ce6557a4..80ba7da8 100644 --- a/glm/core/type_mat4x2.hpp +++ b/glm/core/type_mat4x2.hpp @@ -58,7 +58,9 @@ namespace detail public: // Constructors GLM_FUNC_DECL tmat4x2(); - GLM_FUNC_DECL tmat4x2(tmat4x2 const & m); + GLM_FUNC_DECL tmat4x2(tmat4x2 const & m); + template + GLM_FUNC_DECL tmat4x2(tmat4x2 const & m); GLM_FUNC_DECL explicit tmat4x2( ctor Null); diff --git a/glm/core/type_mat4x2.inl b/glm/core/type_mat4x2.inl index 0d93542a..0a64b922 100644 --- a/glm/core/type_mat4x2.inl +++ b/glm/core/type_mat4x2.inl @@ -87,10 +87,8 @@ namespace detail } template - GLM_FUNC_QUALIFIER tmat4x2::tmat4x2 - ( - tmat4x2 const & m - ) + GLM_FUNC_QUALIFIER tmat4x2::tmat4x2( + tmat4x2 const & m) { this->value[0] = m.value[0]; this->value[1] = m.value[1]; @@ -99,10 +97,18 @@ namespace detail } template - GLM_FUNC_QUALIFIER tmat4x2::tmat4x2 - ( - ctor - ) + template + GLM_FUNC_QUALIFIER tmat4x2::tmat4x2( + tmat4x2 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + this->value[2] = m.value[2]; + this->value[3] = m.value[3]; + } + + template + GLM_FUNC_QUALIFIER tmat4x2::tmat4x2(ctor) {} template @@ -149,7 +155,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat4x2::tmat4x2 diff --git a/glm/core/type_mat4x3.hpp b/glm/core/type_mat4x3.hpp index 536f9286..795cbec7 100644 --- a/glm/core/type_mat4x3.hpp +++ b/glm/core/type_mat4x3.hpp @@ -58,7 +58,9 @@ namespace detail public: // Constructors GLM_FUNC_DECL tmat4x3(); - GLM_FUNC_DECL tmat4x3(tmat4x3 const & m); + GLM_FUNC_DECL tmat4x3(tmat4x3 const & m); + template + GLM_FUNC_DECL tmat4x3(tmat4x3 const & m); GLM_FUNC_DECL explicit tmat4x3( ctor Null); diff --git a/glm/core/type_mat4x3.inl b/glm/core/type_mat4x3.inl index 807060c2..5f8b6757 100644 --- a/glm/core/type_mat4x3.inl +++ b/glm/core/type_mat4x3.inl @@ -87,10 +87,19 @@ namespace detail } template - GLM_FUNC_QUALIFIER tmat4x3::tmat4x3 - ( - tmat4x3 const & m - ) + GLM_FUNC_QUALIFIER tmat4x3::tmat4x3( + tmat4x3 const & m) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + this->value[2] = m.value[2]; + this->value[3] = m.value[3]; + } + + template + template + GLM_FUNC_QUALIFIER tmat4x3::tmat4x3( + tmat4x3 const & m) { this->value[0] = m.value[0]; this->value[1] = m.value[1]; @@ -99,17 +108,12 @@ namespace detail } template - GLM_FUNC_QUALIFIER tmat4x3::tmat4x3 - ( - ctor - ) + GLM_FUNC_QUALIFIER tmat4x3::tmat4x3(ctor) {} template - GLM_FUNC_QUALIFIER tmat4x3::tmat4x3 - ( - value_type const & s - ) + GLM_FUNC_QUALIFIER tmat4x3::tmat4x3( + value_type const & s) { value_type const Zero(0); this->value[0] = col_type(s, Zero, Zero); @@ -149,7 +153,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat4x3::tmat4x3 diff --git a/glm/core/type_mat4x4.hpp b/glm/core/type_mat4x4.hpp index dc026939..39ce60d7 100644 --- a/glm/core/type_mat4x4.hpp +++ b/glm/core/type_mat4x4.hpp @@ -64,7 +64,9 @@ namespace detail public: // Constructors GLM_FUNC_DECL tmat4x4(); - GLM_FUNC_DECL tmat4x4(tmat4x4 const & m); + GLM_FUNC_DECL tmat4x4(tmat4x4 const & m); + template + GLM_FUNC_DECL tmat4x4(tmat4x4 const & m); GLM_FUNC_DECL explicit tmat4x4( ctor Null); diff --git a/glm/core/type_mat4x4.inl b/glm/core/type_mat4x4.inl index ba9680f6..e93583cc 100644 --- a/glm/core/type_mat4x4.inl +++ b/glm/core/type_mat4x4.inl @@ -98,6 +98,19 @@ namespace detail this->value[3] = m.value[3]; } + template + template + GLM_FUNC_QUALIFIER tmat4x4::tmat4x4 + ( + tmat4x4 const & m + ) + { + this->value[0] = m.value[0]; + this->value[1] = m.value[1]; + this->value[2] = m.value[2]; + this->value[3] = m.value[3]; + } + template GLM_FUNC_QUALIFIER tmat4x4::tmat4x4 ( @@ -162,7 +175,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors template template GLM_FUNC_DECL tmat4x4::tmat4x4 diff --git a/glm/core/type_vec1.hpp b/glm/core/type_vec1.hpp index 7a24d3ba..3bba2fa7 100644 --- a/glm/core/type_vec1.hpp +++ b/glm/core/type_vec1.hpp @@ -68,6 +68,8 @@ namespace detail GLM_FUNC_DECL tvec1(); GLM_FUNC_DECL tvec1(tvec1 const & v); + template + GLM_FUNC_DECL tvec1(tvec1 const & v); ////////////////////////////////////// // Explicit basic constructors @@ -83,14 +85,14 @@ namespace detail GLM_FUNC_DECL tvec1(tref1 const & r); ////////////////////////////////////// - // Convertion scalar constructors + // Conversion scalar constructors //! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template GLM_FUNC_DECL explicit tvec1(U const & s); ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors //! Explicit conversions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template diff --git a/glm/core/type_vec1.inl b/glm/core/type_vec1.inl index 18255d2c..9acb879d 100644 --- a/glm/core/type_vec1.inl +++ b/glm/core/type_vec1.inl @@ -69,14 +69,16 @@ namespace detail template GLM_FUNC_QUALIFIER tvec1::tvec1 ( - ctor - ) + tvec1 const & v + ) : + x(v.x) {} template + template GLM_FUNC_QUALIFIER tvec1::tvec1 ( - tvec1 const & v + tvec1 const & v ) : x(v.x) {} @@ -84,6 +86,13 @@ namespace detail ////////////////////////////////////// // Explicit basic constructors + template + GLM_FUNC_QUALIFIER tvec1::tvec1 + ( + ctor + ) + {} + template GLM_FUNC_QUALIFIER tvec1::tvec1 ( @@ -104,7 +113,7 @@ namespace detail {} ////////////////////////////////////// - // Convertion scalar constructors + // Conversion scalar constructors template template @@ -116,7 +125,7 @@ namespace detail {} ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors template template diff --git a/glm/core/type_vec2.hpp b/glm/core/type_vec2.hpp index 2a08d1eb..8da617b4 100644 --- a/glm/core/type_vec2.hpp +++ b/glm/core/type_vec2.hpp @@ -89,6 +89,8 @@ namespace detail GLM_FUNC_DECL tvec2(); GLM_FUNC_DECL tvec2(tvec2 const & v); + template + GLM_FUNC_DECL tvec2(tvec2 const & v); ////////////////////////////////////// // Explicit basic constructors @@ -113,7 +115,7 @@ namespace detail } ////////////////////////////////////// - // Convertion constructors + // Conversion constructors //! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template @@ -126,7 +128,7 @@ namespace detail V const & y); ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors //! Explicit conversions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template diff --git a/glm/core/type_vec2.inl b/glm/core/type_vec2.inl index 980309dc..a19fed63 100644 --- a/glm/core/type_vec2.inl +++ b/glm/core/type_vec2.inl @@ -64,14 +64,17 @@ namespace detail template GLM_FUNC_QUALIFIER tvec2::tvec2 ( - ctor - ) + tvec2 const & v + ) : + x(v.x), + y(v.y) {} template + template GLM_FUNC_QUALIFIER tvec2::tvec2 ( - tvec2 const & v + tvec2 const & v ) : x(v.x), y(v.y) @@ -80,6 +83,13 @@ namespace detail ////////////////////////////////////// // Explicit basic constructors + template + GLM_FUNC_QUALIFIER tvec2::tvec2 + ( + ctor + ) + {} + template GLM_FUNC_QUALIFIER tvec2::tvec2 ( @@ -112,7 +122,7 @@ namespace detail {} ////////////////////////////////////// - // Convertion scalar constructors + // Conversion scalar constructors template template @@ -136,7 +146,7 @@ namespace detail {} ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors template template diff --git a/glm/core/type_vec3.hpp b/glm/core/type_vec3.hpp index c193f0f9..ba35ea33 100644 --- a/glm/core/type_vec3.hpp +++ b/glm/core/type_vec3.hpp @@ -90,6 +90,8 @@ namespace detail GLM_FUNC_DECL tvec3(); GLM_FUNC_DECL tvec3(tvec3 const & v); + template + GLM_FUNC_DECL tvec3(tvec3 const & v); ////////////////////////////////////// // Explicit basic constructors @@ -104,7 +106,7 @@ namespace detail value_type const & s3); ////////////////////////////////////// - // Convertion scalar constructors + // Conversion scalar constructors //! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template @@ -118,7 +120,7 @@ namespace detail W const & z); ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors //! Explicit conversions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template diff --git a/glm/core/type_vec3.inl b/glm/core/type_vec3.inl index e2985c23..439a6131 100644 --- a/glm/core/type_vec3.inl +++ b/glm/core/type_vec3.inl @@ -65,14 +65,18 @@ namespace detail template GLM_FUNC_QUALIFIER tvec3::tvec3 ( - ctor - ) + tvec3 const & v + ) : + x(v.x), + y(v.y), + z(v.z) {} template + template GLM_FUNC_QUALIFIER tvec3::tvec3 ( - tvec3 const & v + tvec3 const & v ) : x(v.x), y(v.y), @@ -82,6 +86,13 @@ namespace detail ////////////////////////////////////// // Explicit basic constructors + template + GLM_FUNC_QUALIFIER tvec3::tvec3 + ( + ctor + ) + {} + template GLM_FUNC_QUALIFIER tvec3::tvec3 ( @@ -142,7 +153,7 @@ namespace detail {} ////////////////////////////////////// - // Convertion scalar constructors + // Conversion scalar constructors template template @@ -169,7 +180,7 @@ namespace detail {} ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors template template diff --git a/glm/core/type_vec4.hpp b/glm/core/type_vec4.hpp index 11d79366..c725e383 100644 --- a/glm/core/type_vec4.hpp +++ b/glm/core/type_vec4.hpp @@ -91,6 +91,8 @@ namespace detail GLM_FUNC_DECL tvec4(); GLM_FUNC_DECL tvec4(type const & v); + template + GLM_FUNC_DECL tvec4(tvec4 const & v); ////////////////////////////////////// // Explicit basic constructors @@ -106,22 +108,22 @@ namespace detail value_type const & s3); ////////////////////////////////////// - // Convertion scalar constructors + // Conversion scalar constructors - //! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) + /// Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template GLM_FUNC_DECL explicit tvec4( U const & x); - //! Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) + /// Explicit converions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template GLM_FUNC_DECL explicit tvec4( A const & x, B const & y, C const & z, - D const & w); + D const & w); ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors //! Explicit conversions (From section 5.4.1 Conversion and scalar constructors of GLSL 1.30.08 specification) template @@ -221,8 +223,8 @@ namespace detail // Unary arithmetic operators GLM_FUNC_DECL tvec4 & operator= (tvec4 const & v); - template - GLM_FUNC_DECL tvec4 & operator= (tvec4 const & v); + template + GLM_FUNC_DECL tvec4 & operator= (tvec4 const & v); template GLM_FUNC_DECL tvec4 & operator+=(U const & s); diff --git a/glm/core/type_vec4.inl b/glm/core/type_vec4.inl index 231f16dd..9c2734e9 100644 --- a/glm/core/type_vec4.inl +++ b/glm/core/type_vec4.inl @@ -72,14 +72,19 @@ namespace detail template GLM_FUNC_QUALIFIER tvec4::tvec4 ( - ctor - ) + type const & v + ) : + x(v.x), + y(v.y), + z(v.z), + w(v.w) {} template + template GLM_FUNC_QUALIFIER tvec4::tvec4 ( - type const & v + tvec4 const & v ) : x(v.x), y(v.y), @@ -90,6 +95,13 @@ namespace detail ////////////////////////////////////// // Explicit basic constructors + template + GLM_FUNC_QUALIFIER tvec4::tvec4 + ( + ctor + ) + {} + template GLM_FUNC_QUALIFIER tvec4::tvec4 ( @@ -237,8 +249,8 @@ namespace detail {} ////////////////////////////////////// - // Convertion scalar constructors - + // Conversion scalar constructors + template template GLM_FUNC_QUALIFIER tvec4::tvec4 @@ -266,8 +278,20 @@ namespace detail w(value_type(w)) {} + template + template + GLM_FUNC_QUALIFIER tvec4::tvec4 + ( + tvec4 const & v + ) : + x(value_type(v.x)), + y(value_type(v.y)), + z(value_type(v.z)), + w(value_type(v.w)) + {} + ////////////////////////////////////// - // Convertion vector constructors + // Conversion vector constructors template template @@ -350,18 +374,6 @@ namespace detail w(value_type(v2.y)) {} - template - template - GLM_FUNC_QUALIFIER tvec4::tvec4 - ( - tvec4 const & v - ) : - x(value_type(v.x)), - y(value_type(v.y)), - z(value_type(v.z)), - w(value_type(v.w)) - {} - ////////////////////////////////////// // Unary arithmetic operators @@ -379,10 +391,10 @@ namespace detail } template - template + template GLM_FUNC_QUALIFIER tvec4 & tvec4::operator= ( - tvec4 const & v + tvec4 const & v ) { this->x = T(v.x); diff --git a/glm/gtx/simd_vec4.hpp b/glm/gtx/simd_vec4.hpp index 0e8da15e..04c67c4c 100644 --- a/glm/gtx/simd_vec4.hpp +++ b/glm/gtx/simd_vec4.hpp @@ -111,7 +111,7 @@ namespace detail vec4 const & v); //////////////////////////////////////// - //// Convertion vector constructors + //// Conversion vector constructors fvec4SIMD(vec2 const & v, float const & s1, float const & s2); fvec4SIMD(float const & s1, vec2 const & v, float const & s2); diff --git a/glm/gtx/simd_vec4.inl b/glm/gtx/simd_vec4.inl index a71c550d..3d04d24d 100644 --- a/glm/gtx/simd_vec4.inl +++ b/glm/gtx/simd_vec4.inl @@ -59,7 +59,7 @@ GLM_FUNC_QUALIFIER fvec4SIMD::fvec4SIMD(float const v[4]) : //fvec4SIMD(ref4 const & r); ////////////////////////////////////// -// Convertion vector constructors +// Conversion vector constructors GLM_FUNC_QUALIFIER fvec4SIMD::fvec4SIMD(vec2 const & v, float const & s1, float const & s2) : Data(_mm_set_ps(s2, s1, v.y, v.x)) diff --git a/test/gtc/gtc_type_precision.cpp b/test/gtc/gtc_type_precision.cpp index 8d1f8411..4e110ad0 100644 --- a/test/gtc/gtc_type_precision.cpp +++ b/test/gtc/gtc_type_precision.cpp @@ -836,12 +836,31 @@ static int test_quat_precision() return Error; } +static int test_fvec_conversion() +{ + int Error(0); + + { + glm::highp_vec4 a = glm::vec4(1, 2, 3, 4); + glm::mediump_vec4 b = glm::vec4(1, 2, 3, 4); + glm::lowp_vec4 c = b; + glm::mediump_vec4 d = c; + glm::lowp_ivec4 e = glm::ivec4(d); + glm::lowp_ivec3 f = glm::ivec3(e); + + Error += glm::all(glm::equal(b, d)) ? 0 : 1; + } + + return Error; +} + int main() { int Error(0); Error += test_scalar_size(); Error += test_fvec_size(); Error += test_fvec_precision(); + Error += test_fvec_conversion(); Error += test_dvec_precision(); Error += test_ivec_size(); Error += test_ivec_precision(); From 82a3f8fafbcaad94bb9aad2213a5a96850463c37 Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Mon, 2 Sep 2013 00:17:59 +0200 Subject: [PATCH 09/10] Updated documentation for GLM 0.9.5 updates --- doc/glm.docx | Bin 1080955 -> 1074623 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/doc/glm.docx b/doc/glm.docx index 9195d3b61b92c1989d54e93de99a8c682ec18012..461dfbe456a1e42d88b91f11da6b00cfbbba1e56 100644 GIT binary patch delta 69534 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 Date: Mon, 2 Sep 2013 00:50:26 +0200 Subject: [PATCH 10/10] Updated precision qualifier documentation --- doc/glm.docx | Bin 1074623 -> 1085121 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/doc/glm.docx b/doc/glm.docx index 461dfbe456a1e42d88b91f11da6b00cfbbba1e56..56eb20b2247b15e36e03aa1f1215d75e82741f09 100644 GIT binary patch delta 79863 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

*!AF>3Py8TGiuK2N+jsAzQj( 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