From 9299abaf9bda24ccad49dffafa80116b06079889 Mon Sep 17 00:00:00 2001 From: Groove Date: Sat, 28 Jul 2018 12:39:15 +0200 Subject: [PATCH] Fixed float warnings --- test/core/core_type_vec3.cpp | 280 +++++++++++++++++---------------- test/core/core_type_vec4.cpp | 157 +++++++++--------- test/gtc/gtc_matrix_access.cpp | 126 +++++++-------- 3 files changed, 284 insertions(+), 279 deletions(-) diff --git a/test/core/core_type_vec3.cpp b/test/core/core_type_vec3.cpp index 024090a3..7fd73b6a 100644 --- a/test/core/core_type_vec3.cpp +++ b/test/core/core_type_vec3.cpp @@ -1,5 +1,7 @@ #define GLM_FORCE_SWIZZLE +#include #include +#include #include #include #include @@ -71,25 +73,25 @@ int test_vec3_ctor() glm::vec3 const A(R); glm::vec3 const B(1.0f); - Error += glm::all(glm::equal(A, B)) ? 0 : 1; + Error += glm::all(glm::equal(A, B, glm::epsilon())) ? 0 : 1; glm::vec3 const C(R, S, T); - Error += glm::all(glm::equal(C, O)) ? 0 : 1; + Error += glm::all(glm::equal(C, O, glm::epsilon())) ? 0 : 1; glm::vec3 const D(R, 2.0f, 3.0f); - Error += glm::all(glm::equal(D, O)) ? 0 : 1; + Error += glm::all(glm::equal(D, O, glm::epsilon())) ? 0 : 1; glm::vec3 const E(1.0f, S, 3.0f); - Error += glm::all(glm::equal(E, O)) ? 0 : 1; + Error += glm::all(glm::equal(E, O, glm::epsilon())) ? 0 : 1; glm::vec3 const F(1.0f, S, T); - Error += glm::all(glm::equal(F, O)) ? 0 : 1; + Error += glm::all(glm::equal(F, O, glm::epsilon())) ? 0 : 1; glm::vec3 const G(R, 2.0f, T); - Error += glm::all(glm::equal(G, O)) ? 0 : 1; + Error += glm::all(glm::equal(G, O, glm::epsilon())) ? 0 : 1; glm::vec3 const H(R, S, 3.0f); - Error += glm::all(glm::equal(H, O)) ? 0 : 1; + Error += glm::all(glm::equal(H, O, glm::epsilon())) ? 0 : 1; } { @@ -100,25 +102,25 @@ int test_vec3_ctor() glm::vec3 const A(R); glm::vec3 const B(1.0); - Error += glm::all(glm::equal(A, B)) ? 0 : 1; + Error += glm::all(glm::equal(A, B, glm::epsilon())) ? 0 : 1; glm::vec3 const C(R, S, T); - Error += glm::all(glm::equal(C, O)) ? 0 : 1; + Error += glm::all(glm::equal(C, O, glm::epsilon())) ? 0 : 1; glm::vec3 const D(R, 2.0, 3.0); - Error += glm::all(glm::equal(D, O)) ? 0 : 1; + Error += glm::all(glm::equal(D, O, glm::epsilon())) ? 0 : 1; glm::vec3 const E(1.0f, S, 3.0); - Error += glm::all(glm::equal(E, O)) ? 0 : 1; + Error += glm::all(glm::equal(E, O, glm::epsilon())) ? 0 : 1; glm::vec3 const F(1.0, S, T); - Error += glm::all(glm::equal(F, O)) ? 0 : 1; + Error += glm::all(glm::equal(F, O, glm::epsilon())) ? 0 : 1; glm::vec3 const G(R, 2.0, T); - Error += glm::all(glm::equal(G, O)) ? 0 : 1; + Error += glm::all(glm::equal(G, O, glm::epsilon())) ? 0 : 1; glm::vec3 const H(R, S, 3.0); - Error += glm::all(glm::equal(H, O)) ? 0 : 1; + Error += glm::all(glm::equal(H, O, glm::epsilon())) ? 0 : 1; } return Error; @@ -159,8 +161,8 @@ static int test_vec3_operators() int Error = 0; { - glm::vec3 A(1.0f); - glm::vec3 B(1.0f); + glm::ivec3 A(1.0f); + glm::ivec3 B(1.0f); bool R = A != B; bool S = A == B; @@ -168,123 +170,123 @@ static int test_vec3_operators() } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B(4.0f, 5.0f, 6.0f); + glm::vec3 const A(1.0f, 2.0f, 3.0f); + glm::vec3 const B(4.0f, 5.0f, 6.0f); - glm::vec3 C = A + B; - Error += C == glm::vec3(5, 7, 9) ? 0 : 1; + glm::vec3 const C = A + B; + Error += glm::all(glm::equal(C, glm::vec3(5, 7, 9), glm::epsilon())) ? 0 : 1; - glm::vec3 D = B - A; - Error += D == glm::vec3(3, 3, 3) ? 0 : 1; + glm::vec3 const D = B - A; + Error += glm::all(glm::equal(D, glm::vec3(3, 3, 3), glm::epsilon())) ? 0 : 1; - glm::vec3 E = A * B; - Error += E == glm::vec3(4, 10, 18) ? 0 : 1; + glm::vec3 const E = A * B; + Error += glm::all(glm::equal(E, glm::vec3(4, 10, 18), glm::epsilon())) ? 0 : 1; - glm::vec3 F = B / A; - Error += F == glm::vec3(4, 2.5, 2) ? 0 : 1; + glm::vec3 const F = B / A; + Error += glm::all(glm::equal(F, glm::vec3(4, 2.5, 2), glm::epsilon())) ? 0 : 1; - glm::vec3 G = A + 1.0f; - Error += G == glm::vec3(2, 3, 4) ? 0 : 1; + glm::vec3 const G = A + 1.0f; + Error += glm::all(glm::equal(G, glm::vec3(2, 3, 4), glm::epsilon())) ? 0 : 1; - glm::vec3 H = B - 1.0f; - Error += H == glm::vec3(3, 4, 5) ? 0 : 1; + glm::vec3 const H = B - 1.0f; + Error += glm::all(glm::equal(H, glm::vec3(3, 4, 5), glm::epsilon())) ? 0 : 1; - glm::vec3 I = A * 2.0f; - Error += I == glm::vec3(2, 4, 6) ? 0 : 1; + glm::vec3 const I = A * 2.0f; + Error += glm::all(glm::equal(I, glm::vec3(2, 4, 6), glm::epsilon())) ? 0 : 1; - glm::vec3 J = B / 2.0f; - Error += J == glm::vec3(2, 2.5, 3) ? 0 : 1; + glm::vec3 const J = B / 2.0f; + Error += glm::all(glm::equal(J, glm::vec3(2, 2.5, 3), glm::epsilon())) ? 0 : 1; - glm::vec3 K = 1.0f + A; - Error += K == glm::vec3(2, 3, 4) ? 0 : 1; + glm::vec3 const K = 1.0f + A; + Error += glm::all(glm::equal(K, glm::vec3(2, 3, 4), glm::epsilon())) ? 0 : 1; - glm::vec3 L = 1.0f - B; - Error += L == glm::vec3(-3, -4, -5) ? 0 : 1; + glm::vec3 const L = 1.0f - B; + Error += glm::all(glm::equal(L, glm::vec3(-3, -4, -5), glm::epsilon())) ? 0 : 1; - glm::vec3 M = 2.0f * A; - Error += M == glm::vec3(2, 4, 6) ? 0 : 1; + glm::vec3 const M = 2.0f * A; + Error += glm::all(glm::equal(M, glm::vec3(2, 4, 6), glm::epsilon())) ? 0 : 1; - glm::vec3 N = 2.0f / B; - Error += N == glm::vec3(0.5, 2.0 / 5.0, 2.0 / 6.0) ? 0 : 1; + glm::vec3 const N = 2.0f / B; + Error += glm::all(glm::equal(N, glm::vec3(0.5, 2.0 / 5.0, 2.0 / 6.0), glm::epsilon())) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B(4.0f, 5.0f, 6.0f); + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B(4.0f, 5.0f, 6.0f); A += B; - Error += A == glm::vec3(5, 7, 9) ? 0 : 1; + Error += A == glm::ivec3(5, 7, 9) ? 0 : 1; - A += 1.0f; - Error += A == glm::vec3(6, 8, 10) ? 0 : 1; + A += 1; + Error += A == glm::ivec3(6, 8, 10) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B(4.0f, 5.0f, 6.0f); + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B(4.0f, 5.0f, 6.0f); B -= A; - Error += B == glm::vec3(3, 3, 3) ? 0 : 1; + Error += B == glm::ivec3(3, 3, 3) ? 0 : 1; - B -= 1.0f; - Error += B == glm::vec3(2, 2, 2) ? 0 : 1; + B -= 1; + Error += B == glm::ivec3(2, 2, 2) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B(4.0f, 5.0f, 6.0f); + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B(4.0f, 5.0f, 6.0f); A *= B; - Error += A == glm::vec3(4, 10, 18) ? 0 : 1; + Error += A == glm::ivec3(4, 10, 18) ? 0 : 1; - A *= 2.0f; - Error += A == glm::vec3(8, 20, 36) ? 0 : 1; + A *= 2; + Error += A == glm::ivec3(8, 20, 36) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B(4.0f, 5.0f, 6.0f); + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B(4.0f, 4.0f, 6.0f); B /= A; - Error += B == glm::vec3(4, 2.5, 2) ? 0 : 1; + Error += B == glm::ivec3(4, 2, 2) ? 0 : 1; - B /= 2.0f; - Error += B == glm::vec3(2, 1.25, 1) ? 0 : 1; + B /= 2; + Error += B == glm::ivec3(2, 1, 1) ? 0 : 1; } { - glm::vec3 B(2.0f); + glm::ivec3 B(2.0f); B /= B.y; - Error += B == glm::vec3(1.0f) ? 0 : 1; + Error += B == glm::ivec3(1.0f) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B = -A; - Error += B == glm::vec3(-1.0f, -2.0f, -3.0f) ? 0 : 1; + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B = -A; + Error += B == glm::ivec3(-1.0f, -2.0f, -3.0f) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B = --A; - Error += B == glm::vec3(0.0f, 1.0f, 2.0f) ? 0 : 1; + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B = --A; + Error += B == glm::ivec3(0.0f, 1.0f, 2.0f) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B = A--; - Error += B == glm::vec3(1.0f, 2.0f, 3.0f) ? 0 : 1; - Error += A == glm::vec3(0.0f, 1.0f, 2.0f) ? 0 : 1; + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B = A--; + Error += B == glm::ivec3(1.0f, 2.0f, 3.0f) ? 0 : 1; + Error += A == glm::ivec3(0.0f, 1.0f, 2.0f) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B = ++A; - Error += B == glm::vec3(2.0f, 3.0f, 4.0f) ? 0 : 1; + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B = ++A; + Error += B == glm::ivec3(2.0f, 3.0f, 4.0f) ? 0 : 1; } { - glm::vec3 A(1.0f, 2.0f, 3.0f); - glm::vec3 B = A++; - Error += B == glm::vec3(1.0f, 2.0f, 3.0f) ? 0 : 1; - Error += A == glm::vec3(2.0f, 3.0f, 4.0f) ? 0 : 1; + glm::ivec3 A(1.0f, 2.0f, 3.0f); + glm::ivec3 B = A++; + Error += B == glm::ivec3(1.0f, 2.0f, 3.0f) ? 0 : 1; + Error += A == glm::ivec3(2.0f, 3.0f, 4.0f) ? 0 : 1; } return Error; @@ -319,57 +321,57 @@ int test_vec3_swizzle3_2() # if GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR { - glm::vec3 v(1, 2, 3); - glm::vec2 u; + glm::ivec3 v(1, 2, 3); + glm::ivec2 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.xx; Error += (u.x == 1 && u.y == 1) ? 0 : 1; + u = v.xy; Error += (u.x == 1 && u.y == 2) ? 0 : 1; + u = v.xz; Error += (u.x == 1 && u.y == 3) ? 0 : 1; + u = v.yx; Error += (u.x == 2 && u.y == 1) ? 0 : 1; + u = v.yy; Error += (u.x == 2 && u.y == 2) ? 0 : 1; + u = v.yz; Error += (u.x == 2 && u.y == 3) ? 0 : 1; + u = v.zx; Error += (u.x == 3 && u.y == 1) ? 0 : 1; + u = v.zy; Error += (u.x == 3 && u.y == 2) ? 0 : 1; + u = v.zz; Error += (u.x == 3 && u.y == 3) ? 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.rr; Error += (u.r == 1 && u.g == 1) ? 0 : 1; + u = v.rg; Error += (u.r == 1 && u.g == 2) ? 0 : 1; + u = v.rb; Error += (u.r == 1 && u.g == 3) ? 0 : 1; + u = v.gr; Error += (u.r == 2 && u.g == 1) ? 0 : 1; + u = v.gg; Error += (u.r == 2 && u.g == 2) ? 0 : 1; + u = v.gb; Error += (u.r == 2 && u.g == 3) ? 0 : 1; + u = v.br; Error += (u.r == 3 && u.g == 1) ? 0 : 1; + u = v.bg; Error += (u.r == 3 && u.g == 2) ? 0 : 1; + u = v.bb; Error += (u.r == 3 && u.g == 3) ? 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; + u = v.ss; Error += (u.s == 1 && u.t == 1) ? 0 : 1; + u = v.st; Error += (u.s == 1 && u.t == 2) ? 0 : 1; + u = v.sp; Error += (u.s == 1 && u.t == 3) ? 0 : 1; + u = v.ts; Error += (u.s == 2 && u.t == 1) ? 0 : 1; + u = v.tt; Error += (u.s == 2 && u.t == 2) ? 0 : 1; + u = v.tp; Error += (u.s == 2 && u.t == 3) ? 0 : 1; + u = v.ps; Error += (u.s == 3 && u.t == 1) ? 0 : 1; + u = v.pt; Error += (u.s == 3 && u.t == 2) ? 0 : 1; + u = v.pp; Error += (u.s == 3 && u.t == 3) ? 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); + u = glm::ivec2(1, 2); + v = glm::ivec3(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.xy = u; Error += (v.x == 1 && v.y == 2 && v.z == 3) ? 0 : 1; + v.xz = u; Error += (v.x == 1 && v.y == 2 && v.z == 2) ? 0 : 1; + v.yx = u; Error += (v.x == 2 && v.y == 1 && v.z == 2) ? 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.yz = u; Error += (v.x == 2 && v.y == 1 && v.z == 2) ? 0 : 1; + v.zx = u; Error += (v.x == 2 && v.y == 1 && v.z == 1) ? 0 : 1; + v.zy = u; Error += (v.x == 2 && v.y == 2 && v.z == 1) ? 0 : 1; //v.zz = u; //Illegal } # endif//GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR @@ -383,22 +385,22 @@ int test_vec3_swizzle3_3() # if GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR { - glm::vec3 v(1, 2, 3); - glm::vec3 u; + glm::ivec3 v(1, 2, 3); + glm::ivec3 u; - u = v; Error += (u.x == 1.0f && u.y == 2.0f && u.z == 3.0f) ? 0 : 1; + u = v; Error += (u.x == 1 && u.y == 2 && u.z == 3) ? 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.xyz; Error += (u.x == 1 && u.y == 2 && u.z == 3) ? 0 : 1; + u = v.zyx; Error += (u.x == 3 && u.y == 2 && u.z == 1) ? 0 : 1; + u.zyx = v; Error += (u.x == 3 && u.y == 2 && u.z == 1) ? 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.rgb; Error += (u.x == 1 && u.y == 2 && u.z == 3) ? 0 : 1; + u = v.bgr; Error += (u.x == 3 && u.y == 2 && u.z == 1) ? 0 : 1; + u.bgr = v; Error += (u.x == 3 && u.y == 2 && u.z == 1) ? 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; + u = v.stp; Error += (u.x == 1 && u.y == 2 && u.z == 3) ? 0 : 1; + u = v.pts; Error += (u.x == 3 && u.y == 2 && u.z == 1) ? 0 : 1; + u.pts = v; Error += (u.x == 3 && u.y == 2 && u.z == 1) ? 0 : 1; } # endif//GLM_LANG @@ -409,12 +411,12 @@ int test_vec3_swizzle_operators() { int Error = 0; - glm::vec3 u = glm::vec3(1, 2, 3); - glm::vec3 v = glm::vec3(10, 20, 30); + glm::ivec3 const u = glm::ivec3(1, 2, 3); + glm::ivec3 const v = glm::ivec3(10, 20, 30); # if GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR { - glm::vec3 q; + glm::ivec3 q; // Swizzle, swizzle binary operators q = u.xyz + v.xyz; Error += (q == (u + v)) ? 0 : 1; @@ -496,20 +498,20 @@ int test_vec3_swizzle_partial() # if GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR { - glm::vec3 const A(1, 2, 3); - glm::vec3 B(A.xy, 3.0f); + glm::ivec3 const A(1, 2, 3); + glm::ivec3 B(A.xy, 3.0f); Error += A == B ? 0 : 1; } { - glm::vec3 const A(1, 2, 3); - glm::vec3 const B(1.0f, A.yz); + glm::ivec3 const A(1, 2, 3); + glm::ivec3 const B(1.0f, A.yz); Error += A == B ? 0 : 1; } { - glm::vec3 const A(1, 2, 3); - glm::vec3 const B(A.xyz); + glm::ivec3 const A(1, 2, 3); + glm::ivec3 const B(A.xyz); Error += A == B ? 0 : 1; } # endif//GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR diff --git a/test/core/core_type_vec4.cpp b/test/core/core_type_vec4.cpp index 141bfc92..28100e42 100644 --- a/test/core/core_type_vec4.cpp +++ b/test/core/core_type_vec4.cpp @@ -2,6 +2,7 @@ #define GLM_FORCE_SWIZZLE #include #include +#include #include #include #include @@ -75,8 +76,8 @@ static int test_vec4_ctor() #endif { - glm::vec4 A(1); - glm::vec4 B(1, 1, 1, 1); + glm::ivec4 const A(1); + glm::ivec4 const B(1, 1, 1, 1); Error += A == B ? 0 : 1; } @@ -307,8 +308,8 @@ static int test_operators() int Error = 0; { - glm::vec4 A(1.0f); - glm::vec4 B(1.0f); + glm::ivec4 A(1.0f); + glm::ivec4 B(1.0f); bool R = A != B; bool S = A == B; @@ -316,123 +317,123 @@ static int test_operators() } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B(4.0f, 5.0f, 6.0f, 7.0f); + glm::vec4 const A(1.0f, 2.0f, 3.0f, 4.0f); + glm::vec4 const B(4.0f, 5.0f, 6.0f, 7.0f); - glm::vec4 C = A + B; - Error += C == glm::vec4(5, 7, 9, 11) ? 0 : 1; + glm::vec4 const C = A + B; + Error += glm::all(glm::equal(C, glm::vec4(5, 7, 9, 11), glm::epsilon())) ? 0 : 1; - glm::vec4 D = B - A; - Error += D == glm::vec4(3, 3, 3, 3) ? 0 : 1; + glm::vec4 const D = B - A; + Error += glm::all(glm::equal(D, glm::vec4(3, 3, 3, 3), glm::epsilon())) ? 0 : 1; - glm::vec4 E = A * B; - Error += E == glm::vec4(4, 10, 18, 28) ? 0 : 1; + glm::vec4 const E = A * B; + Error += glm::all(glm::equal(E, glm::vec4(4, 10, 18, 28), glm::epsilon()) )? 0 : 1; - glm::vec4 F = B / A; - Error += F == glm::vec4(4, 2.5, 2, 7.0f / 4.0f) ? 0 : 1; + glm::vec4 const F = B / A; + Error += glm::all(glm::equal(F, glm::vec4(4, 2.5, 2, 7.0f / 4.0f), glm::epsilon())) ? 0 : 1; - glm::vec4 G = A + 1.0f; - Error += G == glm::vec4(2, 3, 4, 5) ? 0 : 1; + glm::vec4 const G = A + 1.0f; + Error += glm::all(glm::equal(G, glm::vec4(2, 3, 4, 5), glm::epsilon())) ? 0 : 1; - glm::vec4 H = B - 1.0f; - Error += H == glm::vec4(3, 4, 5, 6) ? 0 : 1; + glm::vec4 const H = B - 1.0f; + Error += glm::all(glm::equal(H, glm::vec4(3, 4, 5, 6), glm::epsilon())) ? 0 : 1; - glm::vec4 I = A * 2.0f; - Error += I == glm::vec4(2, 4, 6, 8) ? 0 : 1; + glm::vec4 const I = A * 2.0f; + Error += glm::all(glm::equal(I, glm::vec4(2, 4, 6, 8), glm::epsilon())) ? 0 : 1; - glm::vec4 J = B / 2.0f; - Error += J == glm::vec4(2, 2.5, 3, 3.5) ? 0 : 1; + glm::vec4 const J = B / 2.0f; + Error += glm::all(glm::equal(J, glm::vec4(2, 2.5, 3, 3.5), glm::epsilon())) ? 0 : 1; - glm::vec4 K = 1.0f + A; - Error += K == glm::vec4(2, 3, 4, 5) ? 0 : 1; + glm::vec4 const K = 1.0f + A; + Error += glm::all(glm::equal(K, glm::vec4(2, 3, 4, 5), glm::epsilon())) ? 0 : 1; - glm::vec4 L = 1.0f - B; - Error += L == glm::vec4(-3, -4, -5, -6) ? 0 : 1; + glm::vec4 const L = 1.0f - B; + Error += glm::all(glm::equal(L, glm::vec4(-3, -4, -5, -6), glm::epsilon())) ? 0 : 1; - glm::vec4 M = 2.0f * A; - Error += M == glm::vec4(2, 4, 6, 8) ? 0 : 1; + glm::vec4 const M = 2.0f * A; + Error += glm::all(glm::equal(M, glm::vec4(2, 4, 6, 8), glm::epsilon())) ? 0 : 1; - glm::vec4 N = 2.0f / B; - Error += N == glm::vec4(0.5, 2.0 / 5.0, 2.0 / 6.0, 2.0 / 7.0) ? 0 : 1; + glm::vec4 const N = 2.0f / B; + Error += glm::all(glm::equal(N, glm::vec4(0.5, 2.0 / 5.0, 2.0 / 6.0, 2.0 / 7.0), glm::epsilon())) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B(4.0f, 5.0f, 6.0f, 7.0f); + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B(4.0f, 5.0f, 6.0f, 7.0f); A += B; - Error += A == glm::vec4(5, 7, 9, 11) ? 0 : 1; + Error += A == glm::ivec4(5, 7, 9, 11) ? 0 : 1; - A += 1.0f; - Error += A == glm::vec4(6, 8, 10, 12) ? 0 : 1; + A += 1; + Error += A == glm::ivec4(6, 8, 10, 12) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B(4.0f, 5.0f, 6.0f, 7.0f); + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B(4.0f, 5.0f, 6.0f, 7.0f); B -= A; - Error += B == glm::vec4(3, 3, 3, 3) ? 0 : 1; + Error += B == glm::ivec4(3, 3, 3, 3) ? 0 : 1; - B -= 1.0f; - Error += B == glm::vec4(2, 2, 2, 2) ? 0 : 1; + B -= 1; + Error += B == glm::ivec4(2, 2, 2, 2) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B(4.0f, 5.0f, 6.0f, 7.0f); + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B(4.0f, 5.0f, 6.0f, 7.0f); A *= B; - Error += A == glm::vec4(4, 10, 18, 28) ? 0 : 1; + Error += A == glm::ivec4(4, 10, 18, 28) ? 0 : 1; - A *= 2.0f; - Error += A == glm::vec4(8, 20, 36, 56) ? 0 : 1; + A *= 2; + Error += A == glm::ivec4(8, 20, 36, 56) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B(4.0f, 5.0f, 6.0f, 7.0f); + glm::ivec4 A(1.0f, 2.0f, 2.0f, 4.0f); + glm::ivec4 B(4.0f, 4.0f, 8.0f, 8.0f); B /= A; - Error += B == glm::vec4(4, 2.5, 2, 7.0f / 4.0f) ? 0 : 1; + Error += B == glm::ivec4(4, 2, 4, 2) ? 0 : 1; - B /= 2.0f; - Error += B == glm::vec4(2, 1.25, 1, 7.0f / 4.0f / 2.0f) ? 0 : 1; + B /= 2; + Error += B == glm::ivec4(2, 1, 2, 1) ? 0 : 1; } { - glm::vec4 B(2.0f); + glm::ivec4 B(2.0f); B /= B.y; - Error += B == glm::vec4(1.0f) ? 0 : 1; + Error += B == glm::ivec4(1.0f) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B = -A; - Error += B == glm::vec4(-1.0f, -2.0f, -3.0f, -4.0f) ? 0 : 1; + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B = -A; + Error += B == glm::ivec4(-1.0f, -2.0f, -3.0f, -4.0f) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B = --A; - Error += B == glm::vec4(0.0f, 1.0f, 2.0f, 3.0f) ? 0 : 1; + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B = --A; + Error += B == glm::ivec4(0.0f, 1.0f, 2.0f, 3.0f) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B = A--; - Error += B == glm::vec4(1.0f, 2.0f, 3.0f, 4.0f) ? 0 : 1; - Error += A == glm::vec4(0.0f, 1.0f, 2.0f, 3.0f) ? 0 : 1; + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B = A--; + Error += B == glm::ivec4(1.0f, 2.0f, 3.0f, 4.0f) ? 0 : 1; + Error += A == glm::ivec4(0.0f, 1.0f, 2.0f, 3.0f) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B = ++A; - Error += B == glm::vec4(2.0f, 3.0f, 4.0f, 5.0f) ? 0 : 1; + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B = ++A; + Error += B == glm::ivec4(2.0f, 3.0f, 4.0f, 5.0f) ? 0 : 1; } { - glm::vec4 A(1.0f, 2.0f, 3.0f, 4.0f); - glm::vec4 B = A++; - Error += B == glm::vec4(1.0f, 2.0f, 3.0f, 4.0f) ? 0 : 1; - Error += A == glm::vec4(2.0f, 3.0f, 4.0f, 5.0f) ? 0 : 1; + glm::ivec4 A(1.0f, 2.0f, 3.0f, 4.0f); + glm::ivec4 B = A++; + Error += B == glm::ivec4(1.0f, 2.0f, 3.0f, 4.0f) ? 0 : 1; + Error += A == glm::ivec4(2.0f, 3.0f, 4.0f, 5.0f) ? 0 : 1; } return Error; @@ -443,8 +444,8 @@ static int test_equal() int Error = 0; { - glm::vec4 const A(1, 2, 3, 4); - glm::vec4 const B(1, 2, 3, 4); + glm::uvec4 const A(1, 2, 3, 4); + glm::uvec4 const B(1, 2, 3, 4); Error += A == B ? 0 : 1; Error += A != B ? 1 : 0; } @@ -483,33 +484,33 @@ static int test_swizzle_partial() { int Error = 0; - glm::vec4 A(1, 2, 3, 4); + glm::vec4 const A(1, 2, 3, 4); # if GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR { glm::vec4 B(A.xy, A.zw); - Error += A == B ? 0 : 1; + Error += glm::all(glm::equal(A, B, 0.0001f)) ? 0 : 1; } { glm::vec4 B(A.xy, 3.0f, 4.0f); - Error += A == B ? 0 : 1; + Error += glm::all(glm::equal(A, B, 0.0001f)) ? 0 : 1; } { glm::vec4 B(1.0f, A.yz, 4.0f); - Error += A == B ? 0 : 1; + Error += glm::all(glm::equal(A, B, 0.0001f)) ? 0 : 1; } { glm::vec4 B(1.0f, 2.0f, A.zw); - Error += A == B ? 0 : 1; + Error += glm::all(glm::equal(A, B, 0.0001f)) ? 0 : 1; } { glm::vec4 B(A.xyz, 4.0f); - Error += A == B ? 0 : 1; + Error += glm::all(glm::equal(A, B, 0.0001f)) ? 0 : 1; } { glm::vec4 B(1.0f, A.yzw); - Error += A == B ? 0 : 1; + Error += glm::all(glm::equal(A, B, 0.0001f)) ? 0 : 1; } # endif//GLM_SWIZZLE == GLM_SWIZZLE_OPERATOR || GLM_SWIZZLE == GLM_SWIZZLE_FUNCTION diff --git a/test/gtc/gtc_matrix_access.cpp b/test/gtc/gtc_matrix_access.cpp index bb981992..1b966e22 100644 --- a/test/gtc/gtc_matrix_access.cpp +++ b/test/gtc/gtc_matrix_access.cpp @@ -1,3 +1,5 @@ +#include +#include #include #include #include @@ -18,8 +20,8 @@ int test_mat2x2_row_set() m = glm::row(m, 0, glm::vec2( 0, 1)); m = glm::row(m, 1, glm::vec2( 4, 5)); - Error += glm::row(m, 0) == glm::vec2( 0, 1) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec2( 4, 5) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec2( 0, 1), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec2( 4, 5), glm::epsilon())) ? 0 : 1; return Error; } @@ -33,8 +35,8 @@ int test_mat2x2_col_set() m = glm::column(m, 0, glm::vec2( 0, 1)); m = glm::column(m, 1, glm::vec2( 4, 5)); - Error += glm::column(m, 0) == glm::vec2( 0, 1) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec2( 4, 5) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec2( 0, 1), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec2( 4, 5), glm::epsilon())) ? 0 : 1; return Error; } @@ -49,9 +51,9 @@ int test_mat2x3_row_set() m = glm::row(m, 1, glm::vec2( 4, 5)); m = glm::row(m, 2, glm::vec2( 8, 9)); - Error += glm::row(m, 0) == glm::vec2( 0, 1) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec2( 4, 5) ? 0 : 1; - Error += glm::row(m, 2) == glm::vec2( 8, 9) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec2( 0, 1), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec2( 4, 5), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 2), glm::vec2( 8, 9), glm::epsilon())) ? 0 : 1; return Error; } @@ -65,8 +67,8 @@ int test_mat2x3_col_set() m = glm::column(m, 0, glm::vec3( 0, 1, 2)); m = glm::column(m, 1, glm::vec3( 4, 5, 6)); - Error += glm::column(m, 0) == glm::vec3( 0, 1, 2) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec3( 4, 5, 6) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec3( 0, 1, 2), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec3( 4, 5, 6), glm::epsilon())) ? 0 : 1; return Error; } @@ -82,10 +84,10 @@ int test_mat2x4_row_set() m = glm::row(m, 2, glm::vec2( 8, 9)); m = glm::row(m, 3, glm::vec2(12, 13)); - Error += glm::row(m, 0) == glm::vec2( 0, 1) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec2( 4, 5) ? 0 : 1; - Error += glm::row(m, 2) == glm::vec2( 8, 9) ? 0 : 1; - Error += glm::row(m, 3) == glm::vec2(12, 13) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec2( 0, 1), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec2( 4, 5), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 2), glm::vec2( 8, 9), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 3), glm::vec2(12, 13), glm::epsilon())) ? 0 : 1; return Error; } @@ -99,8 +101,8 @@ int test_mat2x4_col_set() m = glm::column(m, 0, glm::vec4( 0, 1, 2, 3)); m = glm::column(m, 1, glm::vec4( 4, 5, 6, 7)); - Error += glm::column(m, 0) == glm::vec4( 0, 1, 2, 3) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec4( 4, 5, 6, 7) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec4( 0, 1, 2, 3), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec4( 4, 5, 6, 7), glm::epsilon())) ? 0 : 1; return Error; } @@ -114,8 +116,8 @@ int test_mat3x2_row_set() m = glm::row(m, 0, glm::vec3( 0, 1, 2)); m = glm::row(m, 1, glm::vec3( 4, 5, 6)); - Error += glm::row(m, 0) == glm::vec3( 0, 1, 2) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec3( 4, 5, 6) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec3( 0, 1, 2), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec3( 4, 5, 6), glm::epsilon())) ? 0 : 1; return Error; } @@ -130,9 +132,9 @@ int test_mat3x2_col_set() m = glm::column(m, 1, glm::vec2( 4, 5)); m = glm::column(m, 2, glm::vec2( 8, 9)); - Error += glm::column(m, 0) == glm::vec2( 0, 1) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec2( 4, 5) ? 0 : 1; - Error += glm::column(m, 2) == glm::vec2( 8, 9) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec2( 0, 1), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec2( 4, 5), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 2), glm::vec2( 8, 9), glm::epsilon())) ? 0 : 1; return Error; } @@ -147,9 +149,9 @@ int test_mat3x3_row_set() m = glm::row(m, 1, glm::vec3( 4, 5, 6)); m = glm::row(m, 2, glm::vec3( 8, 9, 10)); - Error += glm::row(m, 0) == glm::vec3( 0, 1, 2) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec3( 4, 5, 6) ? 0 : 1; - Error += glm::row(m, 2) == glm::vec3( 8, 9, 10) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec3( 0, 1, 2), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec3( 4, 5, 6), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 2), glm::vec3( 8, 9, 10), glm::epsilon())) ? 0 : 1; return Error; } @@ -164,9 +166,9 @@ int test_mat3x3_col_set() m = glm::column(m, 1, glm::vec3( 4, 5, 6)); m = glm::column(m, 2, glm::vec3( 8, 9, 10)); - Error += glm::column(m, 0) == glm::vec3( 0, 1, 2) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec3( 4, 5, 6) ? 0 : 1; - Error += glm::column(m, 2) == glm::vec3( 8, 9, 10) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec3( 0, 1, 2), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec3( 4, 5, 6), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 2), glm::vec3( 8, 9, 10), glm::epsilon())) ? 0 : 1; return Error; } @@ -182,10 +184,10 @@ int test_mat3x4_row_set() m = glm::row(m, 2, glm::vec3( 8, 9, 10)); m = glm::row(m, 3, glm::vec3(12, 13, 14)); - Error += glm::row(m, 0) == glm::vec3( 0, 1, 2) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec3( 4, 5, 6) ? 0 : 1; - Error += glm::row(m, 2) == glm::vec3( 8, 9, 10) ? 0 : 1; - Error += glm::row(m, 3) == glm::vec3(12, 13, 14) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec3( 0, 1, 2), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec3( 4, 5, 6), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 2), glm::vec3( 8, 9, 10), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 3), glm::vec3(12, 13, 14), glm::epsilon())) ? 0 : 1; return Error; } @@ -200,9 +202,9 @@ int test_mat3x4_col_set() m = glm::column(m, 1, glm::vec4( 4, 5, 6, 7)); m = glm::column(m, 2, glm::vec4( 8, 9, 10, 11)); - Error += glm::column(m, 0) == glm::vec4( 0, 1, 2, 3) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec4( 4, 5, 6, 7) ? 0 : 1; - Error += glm::column(m, 2) == glm::vec4( 8, 9, 10, 11) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec4( 0, 1, 2, 3), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec4( 4, 5, 6, 7), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 2), glm::vec4( 8, 9, 10, 11), glm::epsilon())) ? 0 : 1; return Error; } @@ -216,8 +218,8 @@ int test_mat4x2_row_set() m = glm::row(m, 0, glm::vec4( 0, 1, 2, 3)); m = glm::row(m, 1, glm::vec4( 4, 5, 6, 7)); - Error += glm::row(m, 0) == glm::vec4( 0, 1, 2, 3) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec4( 4, 5, 6, 7) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec4( 0, 1, 2, 3), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec4( 4, 5, 6, 7), glm::epsilon())) ? 0 : 1; return Error; } @@ -233,10 +235,10 @@ int test_mat4x2_col_set() m = glm::column(m, 2, glm::vec2( 8, 9)); m = glm::column(m, 3, glm::vec2(12, 13)); - Error += glm::column(m, 0) == glm::vec2( 0, 1) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec2( 4, 5) ? 0 : 1; - Error += glm::column(m, 2) == glm::vec2( 8, 9) ? 0 : 1; - Error += glm::column(m, 3) == glm::vec2(12, 13) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec2( 0, 1), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec2( 4, 5), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 2), glm::vec2( 8, 9), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 3), glm::vec2(12, 13), glm::epsilon())) ? 0 : 1; return Error; } @@ -251,9 +253,9 @@ int test_mat4x3_row_set() m = glm::row(m, 1, glm::vec4( 4, 5, 6, 7)); m = glm::row(m, 2, glm::vec4( 8, 9, 10, 11)); - Error += glm::row(m, 0) == glm::vec4( 0, 1, 2, 3) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec4( 4, 5, 6, 7) ? 0 : 1; - Error += glm::row(m, 2) == glm::vec4( 8, 9, 10, 11) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec4( 0, 1, 2, 3), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec4( 4, 5, 6, 7), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 2), glm::vec4( 8, 9, 10, 11), glm::epsilon())) ? 0 : 1; return Error; } @@ -269,10 +271,10 @@ int test_mat4x3_col_set() m = glm::column(m, 2, glm::vec3( 8, 9, 10)); m = glm::column(m, 3, glm::vec3(12, 13, 14)); - Error += glm::column(m, 0) == glm::vec3( 0, 1, 2) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec3( 4, 5, 6) ? 0 : 1; - Error += glm::column(m, 2) == glm::vec3( 8, 9, 10) ? 0 : 1; - Error += glm::column(m, 3) == glm::vec3(12, 13, 14) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec3( 0, 1, 2), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec3( 4, 5, 6), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 2), glm::vec3( 8, 9, 10), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 3), glm::vec3(12, 13, 14), glm::epsilon())) ? 0 : 1; return Error; } @@ -288,10 +290,10 @@ int test_mat4x4_row_set() m = glm::row(m, 2, glm::vec4( 8, 9, 10, 11)); m = glm::row(m, 3, glm::vec4(12, 13, 14, 15)); - Error += glm::row(m, 0) == glm::vec4( 0, 1, 2, 3) ? 0 : 1; - Error += glm::row(m, 1) == glm::vec4( 4, 5, 6, 7) ? 0 : 1; - Error += glm::row(m, 2) == glm::vec4( 8, 9, 10, 11) ? 0 : 1; - Error += glm::row(m, 3) == glm::vec4(12, 13, 14, 15) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 0), glm::vec4( 0, 1, 2, 3), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 1), glm::vec4( 4, 5, 6, 7), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 2), glm::vec4( 8, 9, 10, 11), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::row(m, 3), glm::vec4(12, 13, 14, 15), glm::epsilon())) ? 0 : 1; return Error; } @@ -307,10 +309,10 @@ int test_mat4x4_col_set() m = glm::column(m, 2, glm::vec4( 8, 9, 10, 11)); m = glm::column(m, 3, glm::vec4(12, 13, 14, 15)); - Error += glm::column(m, 0) == glm::vec4( 0, 1, 2, 3) ? 0 : 1; - Error += glm::column(m, 1) == glm::vec4( 4, 5, 6, 7) ? 0 : 1; - Error += glm::column(m, 2) == glm::vec4( 8, 9, 10, 11) ? 0 : 1; - Error += glm::column(m, 3) == glm::vec4(12, 13, 14, 15) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 0), glm::vec4( 0, 1, 2, 3), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 1), glm::vec4( 4, 5, 6, 7), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 2), glm::vec4( 8, 9, 10, 11), glm::epsilon())) ? 0 : 1; + Error += glm::all(glm::equal(glm::column(m, 3), glm::vec4(12, 13, 14, 15), glm::epsilon())) ? 0 : 1; return Error; } @@ -322,13 +324,13 @@ int test_mat4x4_row_get() glm::mat4 m(1); glm::vec4 A = glm::row(m, 0); - Error += A == glm::vec4(1, 0, 0, 0) ? 0 : 1; + Error += glm::all(glm::equal(A, glm::vec4(1, 0, 0, 0), glm::epsilon())) ? 0 : 1; glm::vec4 B = glm::row(m, 1); - Error += B == glm::vec4(0, 1, 0, 0) ? 0 : 1; + Error += glm::all(glm::equal(B, glm::vec4(0, 1, 0, 0), glm::epsilon())) ? 0 : 1; glm::vec4 C = glm::row(m, 2); - Error += C == glm::vec4(0, 0, 1, 0) ? 0 : 1; + Error += glm::all(glm::equal(C, glm::vec4(0, 0, 1, 0), glm::epsilon())) ? 0 : 1; glm::vec4 D = glm::row(m, 3); - Error += D == glm::vec4(0, 0, 0, 1) ? 0 : 1; + Error += glm::all(glm::equal(D, glm::vec4(0, 0, 0, 1), glm::epsilon())) ? 0 : 1; return Error; } @@ -340,13 +342,13 @@ int test_mat4x4_col_get() glm::mat4 m(1); glm::vec4 A = glm::column(m, 0); - Error += A == glm::vec4(1, 0, 0, 0) ? 0 : 1; + Error += glm::all(glm::equal(A, glm::vec4(1, 0, 0, 0), glm::epsilon())) ? 0 : 1; glm::vec4 B = glm::column(m, 1); - Error += B == glm::vec4(0, 1, 0, 0) ? 0 : 1; + Error += glm::all(glm::equal(B, glm::vec4(0, 1, 0, 0), glm::epsilon())) ? 0 : 1; glm::vec4 C = glm::column(m, 2); - Error += C == glm::vec4(0, 0, 1, 0) ? 0 : 1; + Error += glm::all(glm::equal(C, glm::vec4(0, 0, 1, 0), glm::epsilon())) ? 0 : 1; glm::vec4 D = glm::column(m, 3); - Error += D == glm::vec4(0, 0, 0, 1) ? 0 : 1; + Error += glm::all(glm::equal(D, glm::vec4(0, 0, 0, 1), glm::epsilon())) ? 0 : 1; return Error; }