Merge branch '0.9.0'

This commit is contained in:
Christophe Riccio 2010-07-08 11:06:46 +01:00
commit 205a288247
18 changed files with 169 additions and 32 deletions

View File

@ -1,4 +1,5 @@
#include "../../glm/glm.hpp" // glm::vec3, glm::vec4, glm::ivec4, glm::mat4
#include <vector>
struct triangle
{
@ -17,12 +18,29 @@ void computeNormal(triangle & Triangle)
#include "../../glm/gtc/matrix_projection.hpp" // glm::perspective
#include "../../glm/gtc/matrix_transform.hpp" // glm::translate, glm::rotate, glm::scale
#include "../../glm/gtc/type_ptr.hpp" // glm::value_ptr
#include "../../glm/gtc/quaternion.hpp" // glm::quat
#include "../../glm/gtx/comparison.hpp" // == !=
//#include "../../glm/ext.hpp"
glm::vec4 const ClearColor = glm::vec4(glm::vec3(0.0f), 1.0f);
glm::ivec4 const Viewport = glm::ivec4(0, 0, 640, 480);
void glUniformMatrix4fv(int location, int count, bool transpose, const float * value);
void ticket0023()
{
std::vector<int> vals;
vals.push_back(1);
vals.push_back(2);
vals.push_back(3);
std::vector<int>::iterator it1, it2;
it1 = vals.begin();
it2 = vals.end();
it1 != it2; // <-- Here
glm::vec3 c;
glm::quat q;
}
int main()
{
//triangle Triangle;
@ -38,5 +56,7 @@ int main()
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));
//glUniformMatrix4fv(LocationMVP, 1, GL_FALSE, glm::value_ptr(MVP));
ticket0023();
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -32,7 +32,7 @@ namespace detail
size_type i
)
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}
@ -43,7 +43,7 @@ namespace detail
size_type i
) const
{
assert(i >= size_type(0) && i < col_size());
assert(i < col_size());
return this->value[i];
}

View File

@ -26,7 +26,7 @@ namespace glm
size_type i
)
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}
@ -36,7 +36,7 @@ namespace glm
size_type i
) const
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}

View File

@ -27,7 +27,7 @@ namespace glm
size_type i
)
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}
@ -38,7 +38,7 @@ namespace glm
size_type i
) const
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}

View File

@ -27,7 +27,7 @@ namespace glm
size_type i
)
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}
@ -38,7 +38,7 @@ namespace glm
size_type i
) const
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}

View File

@ -27,7 +27,7 @@ namespace glm
size_type i
)
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}
@ -38,7 +38,7 @@ namespace glm
size_type i
) const
{
assert(i >= size_type(0) && i < value_size());
assert(i < value_size());
return (&x)[i];
}

View File

@ -11,7 +11,7 @@
///////////////////////////////////////////////////////////////////////////////////////////////////
#ifndef glm_gtc_swizzle
#define glm_gtc_closest_point
#define glm_gtc_swizzle
// Dependency:
#include "../glm.hpp"
@ -26,7 +26,25 @@ namespace glm
//! GLM_GTC_swizzle extension
namespace swizzle{
template <typename T>
T swizzle(
detail::tvec4<T> const & v,
comp x);
template <typename T>
detail::tvec2<T> swizzle(
detail::tvec4<T> const & v,
comp x, comp y);
template <typename T>
detail::tvec3<T> swizzle(
detail::tvec4<T> const & v,
comp x, comp y, comp z);
template <typename T>
inline detail::tref4<T> swizzle(
detail::tvec4<T> const & v,
comp x, comp y, comp z, comp w);
}//namespace swizzle
}//namespace gtc

View File

@ -28,13 +28,45 @@ namespace glm
//! Define == operator for vectors
//! From GLM_GTX_comparison extension.
template <typename vecType>
bool operator== (vecType const & x, vecType const & y);
template <typename T>
bool operator== (
detail::tvec2<T> const & x,
detail::tvec2<T> const & y);
//! Define == operator for vectors
//! From GLM_GTX_comparison extension.
template <typename T>
bool operator== (
detail::tvec3<T> const & x,
detail::tvec3<T> const & y);
//! Define == operator for vectors
//! From GLM_GTX_comparison extension.
template <typename T>
bool operator== (
detail::tvec4<T> const & x,
detail::tvec4<T> const & y);
//! Define != operator for vectors
//! From GLM_GTX_comparison extension.
template <typename vecType>
bool operator!= (vecType const & x, vecType const & y);
template <typename T>
bool operator!= (
detail::tvec2<T> const & x,
detail::tvec2<T> const & y);
//! Define != operator for vectors
//! From GLM_GTX_comparison extension.
template <typename T>
bool operator!= (
detail::tvec3<T> const & x,
detail::tvec3<T> const & y);
//! Define != operator for vectors
//! From GLM_GTX_comparison extension.
template <typename T>
bool operator!= (
detail::tvec4<T> const & x,
detail::tvec4<T> const & y);
}//namespace comparison
}//namespace gtx

View File

@ -0,0 +1,39 @@
///////////////////////////////////////////////////////////////////////////////////////////////////
// OpenGL Mathematics Copyright (c) 2005 - 2010 G-Truc Creation (www.g-truc.net)
///////////////////////////////////////////////////////////////////////////////////////////////////
// Created : 2010-07-07
// Updated : 2010-07-07
// Licence : This source is under MIT License
// File : glm/gtx/int_10_10_10_2.hpp
///////////////////////////////////////////////////////////////////////////////////////////////////
// Dependency:
// - GLM core
///////////////////////////////////////////////////////////////////////////////////////////////////
#ifndef glm_gtx_int_10_10_10_2
#define glm_gtx_int_10_10_10_2
// Dependency:
#include "../glm.hpp"
namespace glm
{
namespace gtx{
//! GLM_GTX_int_10_10_10_2 extension: Add support for integer for core functions
namespace int_10_10_10_2
{
//! From GLM_GTX_int_10_10_10_2 extension.
int int10_10_10_2_cast(glm::vec4 const & v);
//! From GLM_GTX_int_10_10_10_2 extension.
uint uint10_10_10_2_cast(glm::vec4 const & v);
}//namespace integer
}//namespace gtx
}//namespace glm
#include "int_10_10_10_2.inl"
namespace glm{using namespace gtx::int_10_10_10_2;}
#endif//glm_gtx_int_10_10_10_2

View File

@ -0,0 +1,28 @@
///////////////////////////////////////////////////////////////////////////////////////////////////
// OpenGL Mathematics Copyright (c) 2005 - 2010 G-Truc Creation (www.g-truc.net)
///////////////////////////////////////////////////////////////////////////////////////////////////
// Created : 2010-07-07
// Updated : 2010-07-07
// Licence : This source is under MIT License
// File : glm/gtx/int_10_10_10_2.inl
///////////////////////////////////////////////////////////////////////////////////////////////////
namespace glm{
namespace gtx{
namespace int_10_10_10_2
{
//! From GLM_GTX_int_10_10_10_2 extension.
int int10_10_10_2_cast(glm::vec4 const & v)
{
return int(v.x * 2047.f) << 0 | int(v.y * 2047.f) << 10 | int(v.z * 2047.f) << 20 | int(v.w * 3.f) << 30;
}
//! From GLM_GTX_int_10_10_10_2 extension.
uint uint10_10_10_2_cast(glm::vec4 const & v)
{
return uint(v.x * 2047.f) << 0 | uint(v.y * 2047.f) << 10 | uint(v.z * 2047.f) << 20 | uint(v.w * 3.f) << 30;
}
}//namespace int_10_10_10_2
}//namespace gtx
}//namespace glm