Fixed build

This commit is contained in:
Christophe Riccio 2018-08-02 18:30:46 +02:00
parent 8a79414fb8
commit 1092810f2f
5 changed files with 1418 additions and 12 deletions

View File

@ -482,6 +482,34 @@ namespace glm
/// @see gtc_quaternion
typedef quat fquat;
/// Quaternion of low double-qualifier floating-point numbers.
///
/// @see gtc_quaternion
typedef tquat<double, lowp> lowp_dquat;
/// Quaternion of medium double-qualifier floating-point numbers.
///
/// @see gtc_quaternion
typedef tquat<double, mediump> mediump_dquat;
/// Quaternion of high double-qualifier floating-point numbers.
///
/// @see gtc_quaternion
typedef tquat<double, highp> highp_dquat;
#if(defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
typedef highp_dquat dquat;
#elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
typedef mediump_dquat dquat;
#elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && defined(GLM_PRECISION_LOWP_DOUBLE))
typedef lowp_dquat dquat;
#elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
/// Quaternion of default double-qualifier floating-point numbers.
///
/// @see gtc_quaternion
typedef highp_dquat dquat;
#endif
/// @}
} //namespace glm

File diff suppressed because it is too large Load Diff

View File

@ -17,6 +17,7 @@
// Dependency:
#include "../gtc/type_precision.hpp"
#include "../gtc/quaternion.hpp"
#ifndef GLM_ENABLE_EXPERIMENTAL
# error "GLM: GLM_GTX_type_aligned is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."

View File

@ -1,6 +1,7 @@
#define GLM_FORCE_ALIGNED
#include <glm/gtc/random.hpp>
#include <glm/gtc/epsilon.hpp>
#include <glm/gtc/type_precision.hpp>
#if GLM_LANG & GLM_LANG_CXX0X_FLAG
# include <array>
#endif

View File

@ -6,7 +6,7 @@
int test_fastInverseSqrt()
{
int Error(0);
int Error = 0;
Error += glm::epsilonEqual(glm::fastInverseSqrt(1.0f), 1.0f, 0.01f) ? 0 : 1;
Error += glm::epsilonEqual(glm::fastInverseSqrt(1.0), 1.0, 0.01) ? 0 : 1;
@ -14,30 +14,29 @@ int test_fastInverseSqrt()
Error += glm::all(glm::epsilonEqual(glm::fastInverseSqrt(glm::dvec3(1.0)), glm::dvec3(1.0), 0.01)) ? 0 : 1;
Error += glm::all(glm::epsilonEqual(glm::fastInverseSqrt(glm::dvec4(1.0)), glm::dvec4(1.0), 0.01)) ? 0 : 1;
return 0;
}
int test_fastDistance()
{
int Error(0);
int Error = 0;
glm::mediump_f32 A = glm::fastDistance(glm::mediump_f32(0.0f), glm::mediump_f32(1.0f));
glm::mediump_f32 B = glm::fastDistance(glm::mediump_f32vec2(0.0f), glm::mediump_f32vec2(1.0f, 0.0f));
glm::mediump_f32 C = glm::fastDistance(glm::mediump_f32vec3(0.0f), glm::mediump_f32vec3(1.0f, 0.0f, 0.0f));
glm::mediump_f32 D = glm::fastDistance(glm::mediump_f32vec4(0.0f), glm::mediump_f32vec4(1.0f, 0.0f, 0.0f, 0.0f));
float const A = glm::fastDistance(0.0f, 1.0f);
float const B = glm::fastDistance(glm::vec2(0.0f), glm::vec2(1.0f, 0.0f));
float const C = glm::fastDistance(glm::vec3(0.0f), glm::vec3(1.0f, 0.0f, 0.0f));
float const D = glm::fastDistance(glm::vec4(0.0f), glm::vec4(1.0f, 0.0f, 0.0f, 0.0f));
Error += glm::epsilonEqual(A, glm::mediump_f32(1.0f), glm::mediump_f32(0.01f)) ? 0 : 1;
Error += glm::epsilonEqual(B, glm::mediump_f32(1.0f), glm::mediump_f32(0.01f)) ? 0 : 1;
Error += glm::epsilonEqual(C, glm::mediump_f32(1.0f), glm::mediump_f32(0.01f)) ? 0 : 1;
Error += glm::epsilonEqual(D, glm::mediump_f32(1.0f), glm::mediump_f32(0.01f)) ? 0 : 1;
Error += glm::epsilonEqual(A, 1.0f, 0.01f) ? 0 : 1;
Error += glm::epsilonEqual(B, 1.0f, 0.01f) ? 0 : 1;
Error += glm::epsilonEqual(C, 1.0f, 0.01f) ? 0 : 1;
Error += glm::epsilonEqual(D, 1.0f, 0.01f) ? 0 : 1;
return Error;
}
int main()
{
int Error(0);
int Error = 0;
Error += test_fastInverseSqrt();
Error += test_fastDistance();