|
|
|
@ -20,7 +20,7 @@ namespace glm |
|
|
|
|
|
|
|
|
|
namespace core{ |
|
|
|
|
namespace function{ |
|
|
|
|
//! Define vector relational functions from Section 8.3 of GLSL 1.30.8 specification.
|
|
|
|
|
//! Define vector relational functions from Section 8.6 of GLSL 1.30.8 specification.
|
|
|
|
|
//! Included in glm namespace.
|
|
|
|
|
namespace vector_relational |
|
|
|
|
{ |
|
|
|
@ -28,8 +28,9 @@ namespace glm |
|
|
|
|
///@{
|
|
|
|
|
|
|
|
|
|
//! Returns the component-wise comparison result of x < y.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
template <typename T, template <typename> class vecType>
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/lessThan.xml">GLSL lessThan man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
inline typename vecType<T>::bool_type lessThan |
|
|
|
|
( |
|
|
|
|
vecType<T> const & x,
|
|
|
|
@ -49,7 +50,9 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns the component-wise comparison of result x <= y.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/lessThanEqual.xml">GLSL lessThanEqual man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <typename T, template <typename> class vecType>
|
|
|
|
|
inline typename vecType<T>::bool_type lessThanEqual |
|
|
|
|
( |
|
|
|
@ -69,7 +72,9 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns the component-wise comparison of result x > y.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/greaterThan.xml">GLSL greaterThan man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <typename T, template <typename> class vecType>
|
|
|
|
|
inline typename vecType<T>::bool_type greaterThan |
|
|
|
|
( |
|
|
|
@ -89,7 +94,9 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns the component-wise comparison of result x >= y.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/greaterThanEqual.xml">GLSL greaterThanEqual man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <typename T, template <typename> class vecType>
|
|
|
|
|
inline typename vecType<T>::bool_type greaterThanEqual |
|
|
|
|
( |
|
|
|
@ -109,7 +116,9 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns the component-wise comparison of result x == y.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/equal.xml">GLSL equal man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <typename T, template <typename> class vecType>
|
|
|
|
|
inline typename vecType<T>::bool_type equal |
|
|
|
|
( |
|
|
|
@ -127,7 +136,9 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns the component-wise comparison of result x != y.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/notEqual.xml">GLSL notEqual man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <typename T, template <typename> class vecType>
|
|
|
|
|
inline typename vecType<T>::bool_type notEqual |
|
|
|
|
( |
|
|
|
@ -145,7 +156,9 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns true if any component of x is true.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/any.xml">GLSL any man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <template <typename> class vecType>
|
|
|
|
|
inline bool any(vecType<bool> const & v) |
|
|
|
|
{ |
|
|
|
@ -159,7 +172,9 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns true if all components of x are true.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/all.xml">GLSL all man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <template <typename> class vecType>
|
|
|
|
|
inline bool all(vecType<bool> const & v) |
|
|
|
|
{ |
|
|
|
@ -173,7 +188,10 @@ namespace glm |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//! Returns the component-wise logical complement of x.
|
|
|
|
|
//! (From GLSL 1.30.08 specification, section 8.6)
|
|
|
|
|
//! /!\ Because of language incompatibilities between C++ and GLSL, GLM defines the function not but not_ instead.
|
|
|
|
|
//!
|
|
|
|
|
//! \li <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/not.xml">GLSL not man page</a>
|
|
|
|
|
//! \li GLSL 1.30.08 specification, section 8.6
|
|
|
|
|
template <template <typename> class vecType>
|
|
|
|
|
inline vecType<bool> not_(vecType<bool> const & v) |
|
|
|
|
{ |
|
|
|
|