(GLM) Get rid of some more stuff we won't need in libretro-common
This commit is contained in:
parent
d8dab2af5b
commit
fd1b57fb1a
|
@ -1,190 +0,0 @@
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// OpenGL Mathematics (glm.g-truc.net)
|
|
||||||
///
|
|
||||||
/// Copyright (c) 2005 - 2014 G-Truc Creation (www.g-truc.net)
|
|
||||||
/// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
/// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
/// in the Software without restriction, including without limitation the rights
|
|
||||||
/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
/// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
/// furnished to do so, subject to the following conditions:
|
|
||||||
///
|
|
||||||
/// The above copyright notice and this permission notice shall be included in
|
|
||||||
/// all copies or substantial portions of the Software.
|
|
||||||
///
|
|
||||||
/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
/// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
/// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
/// THE SOFTWARE.
|
|
||||||
///
|
|
||||||
/// @ref core
|
|
||||||
/// @file glm/core/dummy.cpp
|
|
||||||
/// @date 2011-01-19 / 2011-06-15
|
|
||||||
/// @author Christophe Riccio
|
|
||||||
///
|
|
||||||
/// GLM is a header only library. There is nothing to compile.
|
|
||||||
/// dummy.cpp exist only a wordaround for CMake file.
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
#define GLM_FORCE_RADIANS
|
|
||||||
#define GLM_MESSAGES
|
|
||||||
#include "../glm.hpp"
|
|
||||||
#include <limits>
|
|
||||||
|
|
||||||
struct material
|
|
||||||
{
|
|
||||||
glm::vec4 emission; // Ecm
|
|
||||||
glm::vec4 ambient; // Acm
|
|
||||||
glm::vec4 diffuse; // Dcm
|
|
||||||
glm::vec4 specular; // Scm
|
|
||||||
float shininess; // Srm
|
|
||||||
};
|
|
||||||
struct light
|
|
||||||
{
|
|
||||||
glm::vec4 ambient; // Acli
|
|
||||||
glm::vec4 diffuse; // Dcli
|
|
||||||
glm::vec4 specular; // Scli
|
|
||||||
glm::vec4 position; // Ppli
|
|
||||||
glm::vec4 halfVector; // Derived: Hi
|
|
||||||
glm::vec3 spotDirection; // Sdli
|
|
||||||
float spotExponent; // Srli
|
|
||||||
float spotCutoff; // Crli
|
|
||||||
// (range: [0.0,90.0], 180.0)
|
|
||||||
float spotCosCutoff; // Derived: cos(Crli)
|
|
||||||
// (range: [1.0,0.0],-1.0)
|
|
||||||
float constantAttenuation; // K0
|
|
||||||
float linearAttenuation; // K1
|
|
||||||
float quadraticAttenuation;// K2
|
|
||||||
};
|
|
||||||
|
|
||||||
// Sample 1
|
|
||||||
#include <glm/vec3.hpp>// glm::vec3
|
|
||||||
#include <glm/geometric.hpp>// glm::cross, glm::normalize
|
|
||||||
|
|
||||||
glm::vec3 computeNormal
|
|
||||||
(
|
|
||||||
glm::vec3 const & a,
|
|
||||||
glm::vec3 const & b,
|
|
||||||
glm::vec3 const & c
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return glm::normalize(glm::cross(c - a, b - a));
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef unsigned int GLuint;
|
|
||||||
#define GL_FALSE 0
|
|
||||||
void glUniformMatrix4fv(GLuint, int, int, float*){}
|
|
||||||
|
|
||||||
// Sample 2
|
|
||||||
#include <glm/vec3.hpp> // glm::vec3
|
|
||||||
#include <glm/vec4.hpp> // glm::vec4, glm::ivec4
|
|
||||||
#include <glm/mat4x4.hpp> // glm::mat4
|
|
||||||
#include <glm/gtc/matrix_transform.hpp> // glm::translate, glm::rotate, glm::scale, glm::perspective
|
|
||||||
#include <glm/gtc/type_ptr.hpp> // glm::value_ptr
|
|
||||||
void func(GLuint LocationMVP, float Translate, glm::vec2 const & Rotate)
|
|
||||||
{
|
|
||||||
glm::mat4 Projection = glm::perspective(45.0f, 4.0f / 3.0f, 0.1f, 100.f);
|
|
||||||
glm::mat4 ViewTranslate = glm::translate(glm::mat4(1.0f), glm::vec3(0.0f, 0.0f, -Translate));
|
|
||||||
glm::mat4 ViewRotateX = glm::rotate(ViewTranslate, Rotate.y, glm::vec3(-1.0f, 0.0f, 0.0f));
|
|
||||||
glm::mat4 View = glm::rotate(ViewRotateX, Rotate.x, glm::vec3(0.0f, 1.0f, 0.0f));
|
|
||||||
glm::mat4 Model = glm::scale(glm::mat4(1.0f), glm::vec3(0.5f));
|
|
||||||
glm::mat4 MVP = Projection * View * Model;
|
|
||||||
glUniformMatrix4fv(LocationMVP, 1, GL_FALSE, glm::value_ptr(MVP));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Sample 3
|
|
||||||
#include <glm/vec2.hpp>// glm::vec2
|
|
||||||
#include <glm/packing.hpp>// glm::packUnorm2x16
|
|
||||||
#include <glm/integer.hpp>// glm::uint
|
|
||||||
#include <glm/gtc/type_precision.hpp>// glm::i8vec2, glm::i32vec2
|
|
||||||
std::size_t const VertexCount = 4;
|
|
||||||
// Float quad geometry
|
|
||||||
std::size_t const PositionSizeF32 = VertexCount * sizeof(glm::vec2);
|
|
||||||
glm::vec2 const PositionDataF32[VertexCount] =
|
|
||||||
{
|
|
||||||
glm::vec2(-1.0f,-1.0f),
|
|
||||||
glm::vec2( 1.0f,-1.0f),
|
|
||||||
glm::vec2( 1.0f, 1.0f),
|
|
||||||
glm::vec2(-1.0f, 1.0f)
|
|
||||||
};
|
|
||||||
// Half-float quad geometry
|
|
||||||
std::size_t const PositionSizeF16 = VertexCount * sizeof(glm::uint);
|
|
||||||
glm::uint const PositionDataF16[VertexCount] =
|
|
||||||
{
|
|
||||||
glm::uint(glm::packUnorm2x16(glm::vec2(-1.0f, -1.0f))),
|
|
||||||
glm::uint(glm::packUnorm2x16(glm::vec2( 1.0f, -1.0f))),
|
|
||||||
glm::uint(glm::packUnorm2x16(glm::vec2( 1.0f, 1.0f))),
|
|
||||||
glm::uint(glm::packUnorm2x16(glm::vec2(-1.0f, 1.0f)))
|
|
||||||
};
|
|
||||||
// 8 bits signed integer quad geometry
|
|
||||||
std::size_t const PositionSizeI8 = VertexCount * sizeof(glm::i8vec2);
|
|
||||||
glm::i8vec2 const PositionDataI8[VertexCount] =
|
|
||||||
{
|
|
||||||
glm::i8vec2(-1,-1),
|
|
||||||
glm::i8vec2( 1,-1),
|
|
||||||
glm::i8vec2( 1, 1),
|
|
||||||
glm::i8vec2(-1, 1)
|
|
||||||
};
|
|
||||||
// 32 bits signed integer quad geometry
|
|
||||||
std::size_t const PositionSizeI32 = VertexCount * sizeof(glm::i32vec2);
|
|
||||||
glm::i32vec2 const PositionDataI32[VertexCount] =
|
|
||||||
{
|
|
||||||
glm::i32vec2 (-1,-1),
|
|
||||||
glm::i32vec2 ( 1,-1),
|
|
||||||
glm::i32vec2 ( 1, 1),
|
|
||||||
glm::i32vec2 (-1, 1)
|
|
||||||
};
|
|
||||||
|
|
||||||
struct intersection
|
|
||||||
{
|
|
||||||
glm::vec4 position;
|
|
||||||
glm::vec3 normal;
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
// Sample 4
|
|
||||||
#include <glm/vec3.hpp>// glm::vec3
|
|
||||||
#include <glm/geometric.hpp>// glm::normalize, glm::dot, glm::reflect
|
|
||||||
#include <glm/exponential.hpp>// glm::pow
|
|
||||||
#include <glm/gtc/random.hpp>// glm::vecRand3
|
|
||||||
glm::vec3 lighting
|
|
||||||
(
|
|
||||||
intersection const & Intersection,
|
|
||||||
material const & Material,
|
|
||||||
light const & Light,
|
|
||||||
glm::vec3 const & View
|
|
||||||
)
|
|
||||||
{
|
|
||||||
glm::vec3 Color(0.0f);
|
|
||||||
glm::vec3 LightVertor(glm::normalize(
|
|
||||||
Light.position - Intersection.position +
|
|
||||||
glm::vecRand3(0.0f, Light.inaccuracy));
|
|
||||||
|
|
||||||
if(!shadow(Intersection.position, Light.position, LightVertor))
|
|
||||||
{
|
|
||||||
float Diffuse = glm::dot(Intersection.normal, LightVector);
|
|
||||||
if(Diffuse <= 0.0f)
|
|
||||||
return Color;
|
|
||||||
if(Material.isDiffuse())
|
|
||||||
Color += Light.color() * Material.diffuse * Diffuse;
|
|
||||||
if(Material.isSpecular())
|
|
||||||
{
|
|
||||||
glm::vec3 Reflect(glm::reflect(
|
|
||||||
glm::normalize(-LightVector),
|
|
||||||
glm::normalize(Intersection.normal)));
|
|
||||||
float Dot = glm::dot(Reflect, View);
|
|
||||||
float Base = Dot > 0.0f ? Dot : 0.0f;
|
|
||||||
float Specular = glm::pow(Base, Material.exponent);
|
|
||||||
Color += Material.specular * Specular;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Color;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
return 0;
|
|
||||||
}
|
|
|
@ -152,14 +152,11 @@ namespace detail
|
||||||
std::numeric_limits<genFIType>::is_iec559 ||
|
std::numeric_limits<genFIType>::is_iec559 ||
|
||||||
(std::numeric_limits<genFIType>::is_signed && std::numeric_limits<genFIType>::is_integer), "'sign' only accept signed inputs");
|
(std::numeric_limits<genFIType>::is_signed && std::numeric_limits<genFIType>::is_integer), "'sign' only accept signed inputs");
|
||||||
|
|
||||||
genFIType result;
|
|
||||||
if(x > genFIType(0))
|
if(x > genFIType(0))
|
||||||
result = genFIType(1);
|
return genFIType(1);
|
||||||
else if(x < genFIType(0))
|
else if(x < genFIType(0))
|
||||||
result = genFIType(-1);
|
return genFIType(-1);
|
||||||
else
|
return genFIType(0);
|
||||||
result = genFIType(0);
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
VECTORIZE_VEC(sign)
|
VECTORIZE_VEC(sign)
|
||||||
|
|
|
@ -511,12 +511,6 @@
|
||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
|
||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CLANG) && (GLM_COMPILER >= GLM_COMPILER_CLANG29)))
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CLANG) && (GLM_COMPILER >= GLM_COMPILER_CLANG29)))
|
||||||
|
|
||||||
// N2235
|
|
||||||
#define GLM_HAS_CONSTEXPR ( \
|
|
||||||
(GLM_LANG & GLM_LANG_CXX11_FLAG) || \
|
|
||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC46)) || \
|
|
||||||
__has_feature(cxx_constexpr))
|
|
||||||
|
|
||||||
// N2672
|
// N2672
|
||||||
#define GLM_HAS_INITIALIZER_LISTS ( \
|
#define GLM_HAS_INITIALIZER_LISTS ( \
|
||||||
(GLM_LANG & GLM_LANG_CXX11_FLAG) || \
|
(GLM_LANG & GLM_LANG_CXX11_FLAG) || \
|
||||||
|
@ -524,25 +518,6 @@
|
||||||
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC44)) || \
|
((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC44)) || \
|
||||||
__has_feature(cxx_generalized_initializers))
|
__has_feature(cxx_generalized_initializers))
|
||||||
|
|
||||||
// OpenMP
|
|
||||||
#ifdef _OPENMP
|
|
||||||
# if(GLM_COMPILER & GLM_COMPILER_GCC)
|
|
||||||
# if(GLM_COMPILER > GLM_COMPILER_GCC47)
|
|
||||||
# define GLM_HAS_OPENMP 31
|
|
||||||
# elif(GLM_COMPILER > GLM_COMPILER_GCC44)
|
|
||||||
# define GLM_HAS_OPENMP 30
|
|
||||||
# elif(GLM_COMPILER > GLM_COMPILER_GCC42)
|
|
||||||
# define GLM_HAS_OPENMP 25
|
|
||||||
# endif
|
|
||||||
# endif//(GLM_COMPILER & GLM_COMPILER_GCC)
|
|
||||||
|
|
||||||
# if(GLM_COMPILER & GLM_COMPILER_VC)
|
|
||||||
# if(GLM_COMPILER > GLM_COMPILER_VC8)
|
|
||||||
# define GLM_HAS_OPENMP 20
|
|
||||||
# endif
|
|
||||||
# endif//(GLM_COMPILER & GLM_COMPILER_GCC)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Not standard
|
// Not standard
|
||||||
#define GLM_HAS_ANONYMOUS_UNION (GLM_LANG & GLM_LANG_CXXMS_FLAG)
|
#define GLM_HAS_ANONYMOUS_UNION (GLM_LANG & GLM_LANG_CXXMS_FLAG)
|
||||||
|
|
||||||
|
@ -667,13 +642,8 @@
|
||||||
|
|
||||||
// User defines: GLM_FORCE_INLINE GLM_FORCE_CUDA
|
// User defines: GLM_FORCE_INLINE GLM_FORCE_CUDA
|
||||||
|
|
||||||
#if(defined(GLM_FORCE_CUDA) || (GLM_COMPILER & GLM_COMPILER_CUDA))
|
|
||||||
# define GLM_CUDA_FUNC_DEF __device__ __host__
|
|
||||||
# define GLM_CUDA_FUNC_DECL __device__ __host__
|
|
||||||
#else
|
|
||||||
# define GLM_CUDA_FUNC_DEF
|
# define GLM_CUDA_FUNC_DEF
|
||||||
# define GLM_CUDA_FUNC_DECL
|
# define GLM_CUDA_FUNC_DECL
|
||||||
#endif
|
|
||||||
|
|
||||||
#if GLM_COMPILER & GLM_COMPILER_GCC
|
#if GLM_COMPILER & GLM_COMPILER_GCC
|
||||||
# define GLM_VAR_USED __attribute__ ((unused))
|
# define GLM_VAR_USED __attribute__ ((unused))
|
||||||
|
@ -765,10 +735,4 @@ namespace glm
|
||||||
# define GLM_RESTRICT_VAR
|
# define GLM_RESTRICT_VAR
|
||||||
#endif//GLM_COMPILER
|
#endif//GLM_COMPILER
|
||||||
|
|
||||||
#if GLM_HAS_CONSTEXPR
|
|
||||||
# define GLM_CONSTEXPR constexpr
|
|
||||||
#else
|
|
||||||
# define GLM_CONSTEXPR
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif//GLM_SETUP_INCLUDED
|
#endif//GLM_SETUP_INCLUDED
|
||||||
|
|
|
@ -48,7 +48,7 @@ namespace detail
|
||||||
typedef tmat2x2<T, P> type;
|
typedef tmat2x2<T, P> type;
|
||||||
typedef tmat2x2<T, P> transpose_type;
|
typedef tmat2x2<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
template <typename U, precision Q>
|
template <typename U, precision Q>
|
||||||
friend tvec2<U, Q> operator/(tmat2x2<U, Q> const & m, tvec2<U, Q> const & v);
|
friend tvec2<U, Q> operator/(tmat2x2<U, Q> const & m, tvec2<U, Q> const & v);
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat2x2<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat2x2<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace detail
|
||||||
typedef tmat2x3<T, P> type;
|
typedef tmat2x3<T, P> type;
|
||||||
typedef tmat3x2<T, P> transpose_type;
|
typedef tmat3x2<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat2x3<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat2x3<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace detail
|
||||||
typedef tmat2x4<T, P> type;
|
typedef tmat2x4<T, P> type;
|
||||||
typedef tmat4x2<T, P> transpose_type;
|
typedef tmat4x2<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat2x4<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat2x4<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace detail
|
||||||
typedef tmat3x2<T, P> type;
|
typedef tmat3x2<T, P> type;
|
||||||
typedef tmat2x3<T, P> transpose_type;
|
typedef tmat2x3<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat3x2<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat3x2<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 3;
|
return 3;
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,7 +48,7 @@ namespace detail
|
||||||
typedef tmat3x3<T, P> type;
|
typedef tmat3x3<T, P> type;
|
||||||
typedef tmat3x3<T, P> transpose_type;
|
typedef tmat3x3<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
template <typename U, precision Q>
|
template <typename U, precision Q>
|
||||||
friend tvec3<U, Q> operator/(tmat3x3<U, Q> const & m, tvec3<U, Q> const & v);
|
friend tvec3<U, Q> operator/(tmat3x3<U, Q> const & m, tvec3<U, Q> const & v);
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat3x3<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat3x3<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 3;
|
return 3;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace detail
|
||||||
typedef tmat3x4<T, P> type;
|
typedef tmat3x4<T, P> type;
|
||||||
typedef tmat4x3<T, P> transpose_type;
|
typedef tmat4x3<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat3x4<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat3x4<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 3;
|
return 3;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace detail
|
||||||
typedef tmat4x2<T, P> type;
|
typedef tmat4x2<T, P> type;
|
||||||
typedef tmat2x4<T, P> transpose_type;
|
typedef tmat2x4<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat4x2<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat4x2<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace detail
|
||||||
typedef tmat4x3<T, P> type;
|
typedef tmat4x3<T, P> type;
|
||||||
typedef tmat3x4<T, P> transpose_type;
|
typedef tmat3x4<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat4x3<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat4x3<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace detail
|
||||||
typedef tmat4x4<T, P> type;
|
typedef tmat4x4<T, P> type;
|
||||||
typedef tmat4x4<T, P> transpose_type;
|
typedef tmat4x4<T, P> transpose_type;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
template <typename U, precision Q>
|
template <typename U, precision Q>
|
||||||
friend tvec4<U, Q> operator/(tmat4x4<U, Q> const & m, tvec4<U, Q> const & v);
|
friend tvec4<U, Q> operator/(tmat4x4<U, Q> const & m, tvec4<U, Q> const & v);
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tmat4x4<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tmat4x4<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,7 @@ namespace detail
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Helper
|
// Helper
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tvec1<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tvec1<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,7 +59,7 @@ namespace detail
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Helper
|
// Helper
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tvec2<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tvec2<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,7 +59,7 @@ namespace detail
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Helper
|
// Helper
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tvec3<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tvec3<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 3;
|
return 3;
|
||||||
}
|
}
|
||||||
|
|
|
@ -60,7 +60,7 @@ namespace detail
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Helper
|
// Helper
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Data
|
// Data
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tvec4<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tvec4<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,7 +64,7 @@ namespace detail
|
||||||
public:
|
public:
|
||||||
T x, y, z, w;
|
T x, y, z, w;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR length_t length() const;
|
GLM_FUNC_DECL length_t length() const;
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
GLM_FUNC_DECL tquat();
|
GLM_FUNC_DECL tquat();
|
||||||
|
|
|
@ -35,7 +35,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR length_t tquat<T, P>::length() const
|
GLM_FUNC_QUALIFIER length_t tquat<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,7 +63,7 @@ namespace detail
|
||||||
public:
|
public:
|
||||||
glm::detail::tquat<T, P> real, dual;
|
glm::detail::tquat<T, P> real, dual;
|
||||||
|
|
||||||
GLM_FUNC_DECL GLM_CONSTEXPR int length() const;
|
GLM_FUNC_DECL int length() const;
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
GLM_FUNC_DECL tdualquat();
|
GLM_FUNC_DECL tdualquat();
|
||||||
|
|
|
@ -33,7 +33,7 @@ namespace glm{
|
||||||
namespace detail
|
namespace detail
|
||||||
{
|
{
|
||||||
template <typename T, precision P>
|
template <typename T, precision P>
|
||||||
GLM_FUNC_QUALIFIER GLM_CONSTEXPR int tdualquat<T, P>::length() const
|
GLM_FUNC_QUALIFIER int tdualquat<T, P>::length() const
|
||||||
{
|
{
|
||||||
return 8;
|
return 8;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue