mirror of
https://github.com/g-truc/glm.git
synced 2024-11-10 12:41:54 +00:00
Merge branch '0.9.3' into swizzle
This commit is contained in:
commit
12192d9232
@ -26,14 +26,7 @@
|
|||||||
Thanks for contributing to the project by <a href="https://sourceforge.net/apps/trac/ogl-math/newticket">submitting tickets for bug reports and feature requests</a>.
|
Thanks for contributing to the project by <a href="https://sourceforge.net/apps/trac/ogl-math/newticket">submitting tickets for bug reports and feature requests</a>.
|
||||||
(SF.net account required). Any feedback is welcome at glm@g-truc.net.
|
(SF.net account required). Any feedback is welcome at glm@g-truc.net.
|
||||||
|
|
||||||
\li \subpage pg_started
|
These pages are the API reference only. For more information about how to use GLM, please have a look at <a href="http://glm.g-truc.net/glm.pdf">the manual</a>.
|
||||||
\li \subpage pg_advanced
|
|
||||||
\li \subpage pg_differences
|
|
||||||
\li \subpage pg_deprecated
|
|
||||||
\li \subpage pg_issues
|
|
||||||
\li \subpage pg_faq
|
|
||||||
\li \subpage pg_samples
|
|
||||||
\li \subpage pg_reference
|
|
||||||
**/
|
**/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@ -55,7 +55,7 @@ namespace glm
|
|||||||
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/lessThan.xml">GLSL lessThan man page</a>
|
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/lessThan.xml">GLSL lessThan man page</a>
|
||||||
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
||||||
template <typename vecType>
|
template <typename vecType>
|
||||||
GLM_FUNC_QUALIFIER typename vecType::bool_type lessThan(vecType const & x, vecType const & y);
|
typename vecType::bool_type lessThan(vecType const & x, vecType const & y);
|
||||||
|
|
||||||
/// Returns the component-wise comparison of result x <= y.
|
/// Returns the component-wise comparison of result x <= y.
|
||||||
///
|
///
|
||||||
@ -63,8 +63,8 @@ namespace glm
|
|||||||
///
|
///
|
||||||
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/lessThanEqual.xml">GLSL lessThanEqual man page</a>
|
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/lessThanEqual.xml">GLSL lessThanEqual man page</a>
|
||||||
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
||||||
template <typename T, template <typename> class vecType>
|
template <typename vecType>
|
||||||
GLM_FUNC_QUALIFIER typename vecType<T>::bool_type lessThanEqual(vecType<T> const & x, vecType<T> const & y);
|
typename vecType::bool_type lessThanEqual(vecType const & x, vecType const & y);
|
||||||
|
|
||||||
/// Returns the component-wise comparison of result x > y.
|
/// Returns the component-wise comparison of result x > y.
|
||||||
///
|
///
|
||||||
@ -72,8 +72,8 @@ namespace glm
|
|||||||
///
|
///
|
||||||
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/greaterThan.xml">GLSL greaterThan man page</a>
|
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/greaterThan.xml">GLSL greaterThan man page</a>
|
||||||
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
||||||
template <typename T, template <typename> class vecType>
|
template <typename vecType>
|
||||||
GLM_FUNC_QUALIFIER typename vecType<T>::bool_type greaterThan(vecType<T> const & x, vecType<T> const & y);
|
typename vecType::bool_type greaterThan(vecType const & x, vecType const & y);
|
||||||
|
|
||||||
/// Returns the component-wise comparison of result x >= y.
|
/// Returns the component-wise comparison of result x >= y.
|
||||||
///
|
///
|
||||||
@ -81,8 +81,8 @@ namespace glm
|
|||||||
///
|
///
|
||||||
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/greaterThanEqual.xml">GLSL greaterThanEqual man page</a>
|
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/greaterThanEqual.xml">GLSL greaterThanEqual man page</a>
|
||||||
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
||||||
template <typename T, template <typename> class vecType>
|
template <typename vecType>
|
||||||
typename vecType<T>::bool_type greaterThanEqual(vecType<T> const & x, vecType<T> const & y);
|
typename vecType::bool_type greaterThanEqual(vecType const & x, vecType const & y);
|
||||||
|
|
||||||
/// Returns the component-wise comparison of result x == y.
|
/// Returns the component-wise comparison of result x == y.
|
||||||
///
|
///
|
||||||
@ -90,8 +90,8 @@ namespace glm
|
|||||||
///
|
///
|
||||||
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/equal.xml">GLSL equal man page</a>
|
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/equal.xml">GLSL equal man page</a>
|
||||||
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
||||||
template <typename T, template <typename> class vecType>
|
template <typename vecType>
|
||||||
GLM_FUNC_QUALIFIER typename vecType<T>::bool_type equal(vecType<T> const & x, vecType<T> const & y);
|
typename vecType::bool_type equal(vecType const & x, vecType const & y);
|
||||||
|
|
||||||
/// Returns the component-wise comparison of result x != y.
|
/// Returns the component-wise comparison of result x != y.
|
||||||
///
|
///
|
||||||
@ -99,8 +99,8 @@ namespace glm
|
|||||||
///
|
///
|
||||||
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/notEqual.xml">GLSL notEqual man page</a>
|
/// @see - <a href="http://www.opengl.org/sdk/docs/manglsl/xhtml/notEqual.xml">GLSL notEqual man page</a>
|
||||||
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
/// @see - <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 8.7</a>
|
||||||
template <typename T, template <typename> class vecType>
|
template <typename vecType>
|
||||||
typename vecType<T>::bool_type notEqual(vecType<T> const & x, vecType<T> const & y);
|
typename vecType::bool_type notEqual(vecType const & x, vecType const & y);
|
||||||
|
|
||||||
/// Returns true if any component of x is true.
|
/// Returns true if any component of x is true.
|
||||||
///
|
///
|
||||||
|
@ -27,16 +27,15 @@
|
|||||||
///
|
///
|
||||||
/// @see core (dependence)
|
/// @see core (dependence)
|
||||||
///
|
///
|
||||||
/// @defgroup gtx_noise GLM_GTX_noise: Procedural noise functions
|
/// @defgroup gtc_noise GLM_GTC_noise: Procedural noise functions
|
||||||
/// @ingroup gtx
|
/// @ingroup gtc
|
||||||
///
|
///
|
||||||
/// Defines 2D, 3D and 4D procedural noise functions
|
/// Defines 2D, 3D and 4D procedural noise functions
|
||||||
/// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise":
|
/// Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise":
|
||||||
/// https://github.com/ashima/webgl-noise
|
/// https://github.com/ashima/webgl-noise
|
||||||
/// Following Stefan Gustavson's paper "Simplex noise demystified":
|
/// Following Stefan Gustavson's paper "Simplex noise demystified":
|
||||||
/// http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf
|
/// http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf
|
||||||
/// Defines the half-precision floating-point type, along with various typedefs for vectors and matrices.
|
/// <glm/gtc/noise.hpp> need to be included to use these functionalities.
|
||||||
/// <glm/gtx/noise.hpp> need to be included to use these functionalities.
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef GLM_GTC_noise
|
#ifndef GLM_GTC_noise
|
||||||
@ -51,7 +50,7 @@
|
|||||||
|
|
||||||
namespace glm
|
namespace glm
|
||||||
{
|
{
|
||||||
/// @addtogroup gtx_noise
|
/// @addtogroup gtc_noise
|
||||||
/// @{
|
/// @{
|
||||||
|
|
||||||
/// Classic perlin noise.
|
/// Classic perlin noise.
|
||||||
|
@ -150,21 +150,21 @@ namespace detail
|
|||||||
/// @addtogroup gtc_quaternion
|
/// @addtogroup gtc_quaternion
|
||||||
/// @{
|
/// @{
|
||||||
|
|
||||||
//! Returns the length of the quaternion.
|
/// Returns the length of the quaternion.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
T length(
|
T length(
|
||||||
detail::tquat<T> const & q);
|
detail::tquat<T> const & q);
|
||||||
|
|
||||||
//! Returns the normalized quaternion.
|
/// Returns the normalized quaternion.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
detail::tquat<T> normalize(
|
detail::tquat<T> normalize(
|
||||||
detail::tquat<T> const & q);
|
detail::tquat<T> const & q);
|
||||||
|
|
||||||
//! Returns dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ...
|
/// Returns dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ...
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
@ -172,7 +172,7 @@ namespace detail
|
|||||||
detail::tquat<T> const & q1,
|
detail::tquat<T> const & q1,
|
||||||
detail::tquat<T> const & q2);
|
detail::tquat<T> const & q2);
|
||||||
|
|
||||||
//! Returns a SLERP interpolated quaternion of x and y according a.
|
/// Returns a SLERP interpolated quaternion of x and y according a.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
@ -181,21 +181,21 @@ namespace detail
|
|||||||
detail::tquat<T> const & y,
|
detail::tquat<T> const & y,
|
||||||
T const & a);
|
T const & a);
|
||||||
|
|
||||||
//! Returns the q conjugate.
|
/// Returns the q conjugate.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
detail::tquat<T> conjugate(
|
detail::tquat<T> conjugate(
|
||||||
detail::tquat<T> const & q);
|
detail::tquat<T> const & q);
|
||||||
|
|
||||||
//! Returns the q inverse.
|
/// Returns the q inverse.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
detail::tquat<T> inverse(
|
detail::tquat<T> inverse(
|
||||||
detail::tquat<T> const & q);
|
detail::tquat<T> const & q);
|
||||||
|
|
||||||
//! Rotates a quaternion from an vector of 3 components axis and an angle expressed in degrees.
|
/// Rotates a quaternion from an vector of 3 components axis and an angle expressed in degrees.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
@ -204,65 +204,65 @@ namespace detail
|
|||||||
typename detail::tquat<T>::value_type const & angle,
|
typename detail::tquat<T>::value_type const & angle,
|
||||||
detail::tvec3<T> const & v);
|
detail::tvec3<T> const & v);
|
||||||
|
|
||||||
//! Converts a quaternion to a 3 * 3 matrix.
|
/// Converts a quaternion to a 3 * 3 matrix.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
detail::tmat3x3<T> mat3_cast(
|
detail::tmat3x3<T> mat3_cast(
|
||||||
detail::tquat<T> const & x);
|
detail::tquat<T> const & x);
|
||||||
|
|
||||||
//! Converts a quaternion to a 4 * 4 matrix.
|
/// Converts a quaternion to a 4 * 4 matrix.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
detail::tmat4x4<T> mat4_cast(
|
detail::tmat4x4<T> mat4_cast(
|
||||||
detail::tquat<T> const & x);
|
detail::tquat<T> const & x);
|
||||||
|
|
||||||
//! Converts a 3 * 3 matrix to a quaternion.
|
/// Converts a 3 * 3 matrix to a quaternion.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
detail::tquat<T> quat_cast(
|
detail::tquat<T> quat_cast(
|
||||||
detail::tmat3x3<T> const & x);
|
detail::tmat3x3<T> const & x);
|
||||||
|
|
||||||
//! Converts a 4 * 4 matrix to a quaternion.
|
/// Converts a 4 * 4 matrix to a quaternion.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
template <typename T>
|
template <typename T>
|
||||||
detail::tquat<T> quat_cast(
|
detail::tquat<T> quat_cast(
|
||||||
detail::tmat4x4<T> const & x);
|
detail::tmat4x4<T> const & x);
|
||||||
|
|
||||||
//! Quaternion of floating-point numbers.
|
/// Quaternion of floating-point numbers.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
typedef detail::tquat<float> quat;
|
typedef detail::tquat<float> quat;
|
||||||
|
|
||||||
//! Quaternion of half-precision floating-point numbers.
|
/// Quaternion of half-precision floating-point numbers.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
typedef detail::tquat<detail::thalf> hquat;
|
typedef detail::tquat<detail::thalf> hquat;
|
||||||
|
|
||||||
//! Quaternion of single-precision floating-point numbers.
|
/// Quaternion of single-precision floating-point numbers.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
typedef detail::tquat<float> fquat;
|
typedef detail::tquat<float> fquat;
|
||||||
|
|
||||||
//! Quaternion of double-precision floating-point numbers.
|
/// Quaternion of double-precision floating-point numbers.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
typedef detail::tquat<double> dquat;
|
typedef detail::tquat<double> dquat;
|
||||||
|
|
||||||
//! Quaternion of low precision floating-point numbers.
|
/// Quaternion of low precision floating-point numbers.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
typedef detail::tquat<lowp_float> lowp_quat;
|
typedef detail::tquat<lowp_float> lowp_quat;
|
||||||
|
|
||||||
//! Quaternion of medium precision floating-point numbers.
|
/// Quaternion of medium precision floating-point numbers.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
typedef detail::tquat<mediump_float> mediump_quat;
|
typedef detail::tquat<mediump_float> mediump_quat;
|
||||||
|
|
||||||
//! Quaternion of high precision floating-point numbers.
|
/// Quaternion of high precision floating-point numbers.
|
||||||
///
|
///
|
||||||
/// @see - gtc_quaternion
|
/// @see - gtc_quaternion
|
||||||
typedef detail::tquat<highp_float> highp_quat;
|
typedef detail::tquat<highp_float> highp_quat;
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
/// @defgroup gtc_random GLM_GTC_random: Random number generation
|
/// @defgroup gtc_random GLM_GTC_random: Random number generation
|
||||||
/// @ingroup gtc
|
/// @ingroup gtc
|
||||||
///
|
///
|
||||||
/// @brief Generate random number from various distribution methods
|
/// @brief Generate random number from various distribution methods.
|
||||||
///
|
///
|
||||||
/// <glm/gtc/random.hpp> need to be included to use these functionalities.
|
/// <glm/gtc/random.hpp> need to be included to use these functionalities.
|
||||||
///////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
/// @defgroup gtc_type_ptr GLM_GTC_type_ptr: Memory layout access
|
/// @defgroup gtc_type_ptr GLM_GTC_type_ptr: Memory layout access
|
||||||
/// @ingroup gtc
|
/// @ingroup gtc
|
||||||
///
|
///
|
||||||
/// @brief Used to get a pointer to the memory layout of a basic type.
|
/// @brief Handles the interaction between pointers and vector, matrix types.
|
||||||
///
|
///
|
||||||
/// This extension defines an overloaded function, glm::value_ptr, which
|
/// This extension defines an overloaded function, glm::value_ptr, which
|
||||||
/// takes any of the \ref core_template "core template types". It returns
|
/// takes any of the \ref core_template "core template types". It returns
|
||||||
|
Loading…
Reference in New Issue
Block a user