Merge branch 'GTC_integer'
This commit is contained in:
@@ -855,6 +855,12 @@ namespace sign
|
||||
|
||||
int Error = 0;
|
||||
|
||||
for(std::size_t i = 0; i < sizeof(Data) / sizeof(type<glm::int32>); ++i)
|
||||
{
|
||||
glm::int32 Result = glm::sign(Data[i].Value);
|
||||
Error += Data[i].Return == Result ? 0 : 1;
|
||||
}
|
||||
|
||||
for(std::size_t i = 0; i < sizeof(Data) / sizeof(type<glm::int32>); ++i)
|
||||
{
|
||||
glm::int32 Result = sign_cmp(Data[i].Value);
|
||||
@@ -888,11 +894,36 @@ namespace sign
|
||||
return Error;
|
||||
}
|
||||
|
||||
int test_i32vec4()
|
||||
{
|
||||
type<glm::i32vec4> const Data[] =
|
||||
{
|
||||
{glm::i32vec4( 1), glm::i32vec4( 1)},
|
||||
{glm::i32vec4( 0), glm::i32vec4( 0)},
|
||||
{glm::i32vec4( 2), glm::i32vec4( 1)},
|
||||
{glm::i32vec4( 3), glm::i32vec4( 1)},
|
||||
{glm::i32vec4(-1), glm::i32vec4(-1)},
|
||||
{glm::i32vec4(-2), glm::i32vec4(-1)},
|
||||
{glm::i32vec4(-3), glm::i32vec4(-1)}
|
||||
};
|
||||
|
||||
int Error = 0;
|
||||
|
||||
for(std::size_t i = 0; i < sizeof(Data) / sizeof(type<glm::i32vec4>); ++i)
|
||||
{
|
||||
glm::i32vec4 Result = glm::sign(Data[i].Value);
|
||||
Error += glm::all(glm::equal(Data[i].Return, Result)) ? 0 : 1;
|
||||
}
|
||||
|
||||
return Error;
|
||||
}
|
||||
|
||||
int test()
|
||||
{
|
||||
int Error = 0;
|
||||
|
||||
Error += test_int32();
|
||||
Error += test_i32vec4();
|
||||
|
||||
return Error;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
glmCreateTestGTC(gtc_bitfield)
|
||||
glmCreateTestGTC(gtc_constants)
|
||||
glmCreateTestGTC(gtc_epsilon)
|
||||
glmCreateTestGTC(gtc_integer)
|
||||
glmCreateTestGTC(gtc_matrix_access)
|
||||
glmCreateTestGTC(gtc_matrix_integer)
|
||||
glmCreateTestGTC(gtc_matrix_inverse)
|
||||
|
||||
68
test/gtc/gtc_integer.cpp
Normal file
68
test/gtc/gtc_integer.cpp
Normal file
@@ -0,0 +1,68 @@
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// OpenGL Mathematics Copyright (c) 2005 - 2014 G-Truc Creation (www.g-truc.net)
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Created : 2014-11-17
|
||||
// Updated : 2014-11-17
|
||||
// Licence : This source is under MIT licence
|
||||
// File : test/gtc/integer.cpp
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include <glm/gtc/integer.hpp>
|
||||
#include <glm/gtc/type_precision.hpp>
|
||||
#include <glm/gtc/vec1.hpp>
|
||||
#include <glm/vector_relational.hpp>
|
||||
#include <glm/vec2.hpp>
|
||||
#include <glm/vec3.hpp>
|
||||
#include <glm/vec4.hpp>
|
||||
#include <ctime>
|
||||
#include <cstdio>
|
||||
#include <vector>
|
||||
|
||||
namespace log2_
|
||||
{
|
||||
int test()
|
||||
{
|
||||
int Error = 0;
|
||||
|
||||
int A0(glm::log2(10.f));
|
||||
glm::ivec1 B0(glm::log2(glm::vec1(10.f)));
|
||||
glm::ivec2 C0(glm::log2(glm::vec2(10.f)));
|
||||
glm::ivec3 D0(glm::log2(glm::vec3(10.f)));
|
||||
glm::ivec4 E0(glm::log2(glm::vec4(10.f)));
|
||||
|
||||
int A1 = glm::log2(int(10.f));
|
||||
glm::ivec1 B1 = glm::log2(glm::ivec1(10.f));
|
||||
glm::ivec2 C1 = glm::log2(glm::ivec2(10.f));
|
||||
glm::ivec3 D1 = glm::log2(glm::ivec3(10.f));
|
||||
glm::ivec4 E1 = glm::log2(glm::ivec4(10.f));
|
||||
|
||||
Error += A0 == A1 ? 0 : 1;
|
||||
Error += glm::all(glm::equal(B0, B1)) ? 0 : 1;
|
||||
Error += glm::all(glm::equal(C0, C1)) ? 0 : 1;
|
||||
Error += glm::all(glm::equal(D0, D1)) ? 0 : 1;
|
||||
Error += glm::all(glm::equal(E0, E1)) ? 0 : 1;
|
||||
|
||||
return Error;
|
||||
}
|
||||
|
||||
int perf()
|
||||
{
|
||||
int Error = 0;
|
||||
|
||||
return Error;
|
||||
}
|
||||
}//namespace log2_
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
int Error(0);
|
||||
|
||||
Error += ::log2_::test();
|
||||
|
||||
# ifdef GLM_TEST_ENABLE_PERF
|
||||
Error += ::log2_::perf();
|
||||
# endif
|
||||
|
||||
return Error;
|
||||
}
|
||||
Reference in New Issue
Block a user