parent
71eaa832ec
commit
c4c558098f
4 changed files with 1136 additions and 685 deletions
@ -1,114 +1,500 @@ |
||||
/** |
||||
\defgroup gtc GLM Core Extensions |
||||
/*! |
||||
\defgroup gtx GLM Experimental Extensions |
||||
|
||||
\brief Functions and types that GLSL does not provide, but are useful to have. |
||||
|
||||
Core extensions differ from \ref gtx "experimental extensions" in that core extensions |
||||
are fairly stable. The API for experimental extensions is expected to change |
||||
significantly between versions. |
||||
Experimental extensions are useful functions and types, but the development of |
||||
their API and functionality is not necessarily stable. They can change substantially |
||||
between versions. Backwards compatibility is not much of an issue for them. |
||||
|
||||
You can bring all of the extensions, core or experimental, in by |
||||
including <glm/ext.hpp> Otherwise, you will have to include each extension |
||||
by including a specific file. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_half_float Half Float Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_associated_min_max Associated Min/Max Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defines the half-float type, along with various typedefs for vectors and matrices. |
||||
\brief Min and max functions that return associated values not the compared onces. |
||||
|
||||
You must include <glm/glc/half_float.hpp> to get this functionality. |
||||
You must include the file <glm/glx/associated_min_max.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_matrix_access Matrix Access Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_bit Bitwise Operations Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defines functions that allow you to access rows or columns of a matrix easily. |
||||
\brief Allow to perform bit operations on integer values |
||||
|
||||
You must include <glm/glc/matrix_access.hpp> to get this functionality. |
||||
You must include the file <glm/glx/bit.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_matrix_integer Integer Matrix Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_closest_point Find Closest Point Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defines a number of matrices with integer types. |
||||
\brief Find the point on a straight line which is the closet of a point. |
||||
|
||||
You must include the file <glm/glx/closest_point.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_color_cast Color Conversion Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
You must include <glm/glc/matrix_integer.hpp> to get this functionality. |
||||
\brief Conversion between two color types. |
||||
|
||||
You must include the file <glm/glx/color_cast.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_matrix_inverse Matrix Inverse Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_color_space RGB to HSV Conversion Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defines additional matrix inverting functions. |
||||
\brief Related to RGB to HSV conversions and operations. |
||||
|
||||
You must include the file <glm/glx/color_space.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_color_space_YCoCg RGB to YCoCg Conversion Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
You must include <glm/glc/matrix_inverse.hpp> to get this functionality. |
||||
\brief RGB to YCoCg conversions and operations |
||||
|
||||
You must include the file <glm/glx/color_space_YCoCg.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_matrix_transform Matrix Transform Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_compatibility Cg and HLSL Compatibility Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defines functions that generate common transformation matrices. |
||||
\brief Provide functions to increase the compatibility with Cg and HLSL languages |
||||
|
||||
You must include the file <glm/glx/compatibility.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_component_wise Component Wise Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
The matrices generated by this extension use standard OpenGL fixed-function |
||||
conventions. For example, the lookAt function generates a transform from world |
||||
space into the specific eye space that the projective matrix functions ( |
||||
perspective, ortho, etc) are designed to expect. The OpenGL compatibility |
||||
specifications defines the particular layout of this eye space. |
||||
\brief Operations between components of a type |
||||
|
||||
You must include the file <glm/glx/component_wise.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_epsilon Epsilon Comparison Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
You must include <glm/glc/matrix_transform.hpp> to get this functionality. |
||||
\brief Comparison functions for a user defined epsilon values. |
||||
|
||||
You must include the file <glm/glx/epsilon.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_quaternion Quaternion Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_euler_angles Matrix From Euler Angles Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defines a templated quaternion type and several quaternion operations. |
||||
\brief Build matrices from Euler angles. |
||||
|
||||
You must include the file <glm/glx/euler_angles.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_extend Position Extending Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
You must include <glm/glc/quaternion.hpp> to get this functionality. |
||||
\brief Extend a position from a source to a position at a defined length. |
||||
|
||||
You must include the file <glm/glx/extend.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_type_precision Type Precision Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_extented_min_max Extended Min Max Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defines specific C++-based precision types. |
||||
\brief Min and max functions for 3 to 4 parameters. |
||||
|
||||
You must include the file <glm/glx/extented_min_max.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_fast_exponential Fast Exponentiation Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\ref core_precision defines types based on GLSL's precision qualifiers. This |
||||
extension defines types based on explicitly-sized C++ data types. |
||||
\brief Fast but less accurate implementations of exponential based functions. |
||||
|
||||
You must include the file <glm/glx/fast_exponential.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_fast_square_root Fast Square Root Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
You must include the file <glm/glc/type_precision.hpp> to get this functionality. |
||||
\brief Fast but less accurate implementations of square root based functions. |
||||
|
||||
You must include the file <glm/glx/fast_square_root.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtc_type_ptr Pointer Access Core Extension |
||||
\ingroup gtc |
||||
/*! |
||||
\defgroup gtx_fast_trigonometry Fast Trig Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Used to get a pointer to the memory layout of a basic type. |
||||
\brief Fast but less accurate implementations of trigonometric functions. |
||||
|
||||
You must include the file <glm/glx/fast_trigonometry.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_handed_coordinate_space Space Handedness Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
This extension defines an overloaded function, glm::value_ptr, which |
||||
takes any of the \ref core_template "core template types". It returns |
||||
a pointer to the memory layout of the object. Matrix types store their values |
||||
in row-major order. |
||||
\brief To know if a set of three basis vectors defines a right or left-handed coordinate system. |
||||
|
||||
You must include the file <glm/glx/handed_coordinate_system.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_inertia Intertial Matrix Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Create inertia matrices |
||||
|
||||
You must include the file <glm/glx/inertia.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_int_10_10_10_2 Packed Integer Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
This is useful for uploading data to matrices or copying data to buffer objects. |
||||
\brief Add support for integer for core functions |
||||
|
||||
You must include the file <glm/glx/int_10_10_10_2.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_integer Integer Function Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
Example: |
||||
\brief Add support for integer for core functions |
||||
|
||||
You must include the file <glm/glx/integer.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_intersect Intersection Test Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\code |
||||
#include <glm/glm.hpp> |
||||
#include <glm/glc/type_ptr.hpp> |
||||
glm::vec3 aVector(3); |
||||
glm::mat4 someMatrix(1.0); |
||||
\brief Add intersection functions |
||||
|
||||
glUniform3fv(uniformLoc, 1, glm::value_ptr(aVector)); |
||||
glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, glm::value_ptr(someMatrix)); |
||||
\endcode |
||||
You must include the file <glm/glx/intersect.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_log_base Log With Base Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
You must include the file <glm/glc/type_ptr.hpp> to get this functionality. |
||||
\brief Logarithm for any base. base can be a vector or a scalar. |
||||
|
||||
You must include the file <glm/glx/log_base.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_matrix_cross_product Cross Product Matrices Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Build cross product matrices |
||||
|
||||
You must include the file <glm/glx/matrix_cross_product.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_matrix_major_storage Build Matrix Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Build matrices with specific matrix order, row or column |
||||
|
||||
You must include the file <glm/glx/matrix_major_storage.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_matrix_operation Diagonal Matrix Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Build diagonal matrices from vectors. |
||||
|
||||
You must include the file <glm/glx/matrix_operation.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_matrix_query Query Matrix Properties Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Query to evaluate matrix properties |
||||
|
||||
You must include the file <glm/glx/matrix_query.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_mixed_product Mixed Product Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Mixed product of 3 vectors. |
||||
|
||||
You must include the file <glm/glx/mixed_product.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_multiple Multiples Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Find the closest number of a number multiple of other number. |
||||
|
||||
You must include the file <glm/glx/multiple.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_norm Vector Norm Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Various way to compute vector norms. |
||||
|
||||
You must include the file <glm/glx/norm.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_normal Compute Normal Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Compute the normal of a triangle. |
||||
|
||||
You must include the file <glm/glx/normal.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_normalize_dot Normalize Dot Product Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Dot product of vectors that need to be normalize with a single square root. |
||||
|
||||
You must include the file <glm/glx/normalized_dot.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_number_precision Number Precision Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defined size types. |
||||
|
||||
You must include the file <glm/glx/number_precision.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_ocl_type OpenCL Types Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief OpenCL types. |
||||
|
||||
You must include the file <glm/glx/ocl_type.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_optimum_pow Optimum Pow Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Integer exponentiation of power functions. |
||||
|
||||
You must include the file <glm/glx/optimum_pow.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_orthonormalize Orthonormalize Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Orthonormalize matrices. |
||||
|
||||
You must include the file <glm/glx/orthonormalize.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_perpendicular Perpendicular Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Perpendicular of a vector from other one |
||||
|
||||
You must include the file <glm/glx/perpendicular.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_polar_coordinates Polar Coordinates Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Conversion from Euclidean space to polar space and revert. |
||||
|
||||
You must include the file <glm/glx/polar_coordinates.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_projection Projection Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Projection of a vector to other one |
||||
|
||||
You must include the file <glm/glx/projection.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_quaternion Quaternion Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Quaternion types and functions |
||||
|
||||
You must include the file <glm/glx/quaternion.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_random Random Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Generate random number from various distribution methods |
||||
|
||||
You must include the file <glm/glx/random.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_raw_data Raw Data Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Projection of a vector to other one |
||||
|
||||
You must include the file <glm/glx/raw_data.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_reciprocal Reciprocal Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Define secant, cosecant and cotangent functions. |
||||
|
||||
You must include the file <glm/glx/reciprocal.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_rotate_vector Rotate Vector Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Function to directly rotate a vector |
||||
|
||||
You must include the file <glm/glx/rotate_vector.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_simd_mat4 SIMD Mat4 Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief SIMD implementation of mat4 type. |
||||
|
||||
You must include the file <glm/glx/simd_mat4.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_simd_vec4 SIMD Vec4 Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief SIMD implementation of vec4 type. |
||||
|
||||
You must include the file <glm/glx/simd_vec4.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_spline Spline Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Spline functions |
||||
|
||||
You must include the file <glm/glx/spline.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_string_cast String Cast Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Setup strings for GLM type values |
||||
|
||||
You must include the file <glm/glx/transform.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_transform Transformation Matrices Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Add transformation matrices |
||||
|
||||
You must include the file <glm/glx/transform2.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_transform2 Extra Transform Matrices Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Add extra transformation matrices |
||||
|
||||
You must include the file <glm/glx/unsigned_int.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_unsigned_int Unsigned Int Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Add support for unsigned integer for core functions |
||||
|
||||
You must include the file <glm/glx/unsigned_int.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_vector_access Vector Access Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Function to set values to vectors |
||||
|
||||
You must include the file <glm/glx/vector_access.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_vector_angle Vector Angle Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Compute angle between vectors |
||||
|
||||
You must include the file <glm/glx/vector_angle.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_vector_query Vector Query Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Query informations of vector types |
||||
|
||||
You must include the file <glm/glx/vector_query.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_verbose_operator Verbose Operator Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Use words to replace operators |
||||
|
||||
You must include the file <glm/glx/verbose_operator.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtx_wrap Wrap Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Wrapping mode using my texture samping. |
||||
|
||||
You must include the file <glm/glx/wrap.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
|
@ -1,500 +1,114 @@ |
||||
/** |
||||
\defgroup gtx GLM Experimental Extensions |
||||
/*! |
||||
\defgroup gtc GLM Core Extensions |
||||
|
||||
\brief Functions and types that GLSL does not provide, but are useful to have. |
||||
|
||||
Experimental extensions are useful functions and types, but the development of |
||||
their API and functionality is not necessarily stable. They can change substantially |
||||
between versions. Backwards compatibility is not much of an issue for them. |
||||
Core extensions differ from \ref gtx "experimental extensions" in that core extensions |
||||
are fairly stable. The API for experimental extensions is expected to change |
||||
significantly between versions. |
||||
|
||||
You can bring all of the extensions, core or experimental, in by |
||||
including <glm/ext.hpp> Otherwise, you will have to include each extension |
||||
by including a specific file. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_associated_min_max Associated Min/Max Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_half_float Half Float Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Min and max functions that return associated values not the compared onces. |
||||
\brief Defines the half-float type, along with various typedefs for vectors and matrices. |
||||
|
||||
You must include the file <glm/glx/associated_min_max.hpp> to get this functionality. |
||||
You must include <glm/glc/half_float.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_bit Bitwise Operations Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_matrix_access Matrix Access Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Allow to perform bit operations on integer values |
||||
\brief Defines functions that allow you to access rows or columns of a matrix easily. |
||||
|
||||
You must include the file <glm/glx/bit.hpp> to get this functionality. |
||||
You must include <glm/glc/matrix_access.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_closest_point Find Closest Point Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_matrix_integer Integer Matrix Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Find the point on a straight line which is the closet of a point. |
||||
|
||||
You must include the file <glm/glx/closest_point.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_color_cast Color Conversion Experimental Extension |
||||
\ingroup gtx |
||||
\brief Defines a number of matrices with integer types. |
||||
|
||||
\brief Conversion between two color types. |
||||
|
||||
You must include the file <glm/glx/color_cast.hpp> to get this functionality. |
||||
You must include <glm/glc/matrix_integer.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_color_space RGB to HSV Conversion Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_matrix_inverse Matrix Inverse Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Related to RGB to HSV conversions and operations. |
||||
|
||||
You must include the file <glm/glx/color_space.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_color_space_YCoCg RGB to YCoCg Conversion Experimental Extension |
||||
\ingroup gtx |
||||
\brief Defines additional matrix inverting functions. |
||||
|
||||
\brief RGB to YCoCg conversions and operations |
||||
|
||||
You must include the file <glm/glx/color_space_YCoCg.hpp> to get this functionality. |
||||
You must include <glm/glc/matrix_inverse.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_compatibility Cg and HLSL Compatibility Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_matrix_transform Matrix Transform Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Provide functions to increase the compatibility with Cg and HLSL languages |
||||
|
||||
You must include the file <glm/glx/compatibility.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_component_wise Component Wise Experimental Extension |
||||
\ingroup gtx |
||||
\brief Defines functions that generate common transformation matrices. |
||||
|
||||
\brief Operations between components of a type |
||||
|
||||
You must include the file <glm/glx/component_wise.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_epsilon Epsilon Comparison Experimental Extension |
||||
\ingroup gtx |
||||
The matrices generated by this extension use standard OpenGL fixed-function |
||||
conventions. For example, the lookAt function generates a transform from world |
||||
space into the specific eye space that the projective matrix functions ( |
||||
perspective, ortho, etc) are designed to expect. The OpenGL compatibility |
||||
specifications defines the particular layout of this eye space. |
||||
|
||||
\brief Comparison functions for a user defined epsilon values. |
||||
|
||||
You must include the file <glm/glx/epsilon.hpp> to get this functionality. |
||||
You must include <glm/glc/matrix_transform.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_euler_angles Matrix From Euler Angles Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_quaternion Quaternion Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Build matrices from Euler angles. |
||||
|
||||
You must include the file <glm/glx/euler_angles.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_extend Position Extending Experimental Extension |
||||
\ingroup gtx |
||||
\brief Defines a templated quaternion type and several quaternion operations. |
||||
|
||||
\brief Extend a position from a source to a position at a defined length. |
||||
|
||||
You must include the file <glm/glx/extend.hpp> to get this functionality. |
||||
You must include <glm/glc/quaternion.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_extented_min_max Extended Min Max Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_type_precision Type Precision Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Min and max functions for 3 to 4 parameters. |
||||
|
||||
You must include the file <glm/glx/extented_min_max.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_fast_exponential Fast Exponentiation Experimental Extension |
||||
\ingroup gtx |
||||
\brief Defines specific C++-based precision types. |
||||
|
||||
\brief Fast but less accurate implementations of exponential based functions. |
||||
|
||||
You must include the file <glm/glx/fast_exponential.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_fast_square_root Fast Square Root Experimental Extension |
||||
\ingroup gtx |
||||
\ref core_precision defines types based on GLSL's precision qualifiers. This |
||||
extension defines types based on explicitly-sized C++ data types. |
||||
|
||||
\brief Fast but less accurate implementations of square root based functions. |
||||
|
||||
You must include the file <glm/glx/fast_square_root.hpp> to get this functionality. |
||||
You must include the file <glm/glc/type_precision.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_fast_trigonometry Fast Trig Experimental Extension |
||||
\ingroup gtx |
||||
/*! |
||||
\defgroup gtc_type_ptr Pointer Access Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Fast but less accurate implementations of trigonometric functions. |
||||
|
||||
You must include the file <glm/glx/fast_trigonometry.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_handed_coordinate_space Space Handedness Experimental Extension |
||||
\ingroup gtx |
||||
\brief Used to get a pointer to the memory layout of a basic type. |
||||
|
||||
\brief To know if a set of three basis vectors defines a right or left-handed coordinate system. |
||||
|
||||
You must include the file <glm/glx/handed_coordinate_system.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_inertia Intertial Matrix Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Create inertia matrices |
||||
|
||||
You must include the file <glm/glx/inertia.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_int_10_10_10_2 Packed Integer Experimental Extension |
||||
\ingroup gtx |
||||
This extension defines an overloaded function, glm::value_ptr, which |
||||
takes any of the \ref core_template "core template types". It returns |
||||
a pointer to the memory layout of the object. Matrix types store their values |
||||
in row-major order. |
||||
|
||||
\brief Add support for integer for core functions |
||||
|
||||
You must include the file <glm/glx/int_10_10_10_2.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_integer Integer Function Experimental Extension |
||||
\ingroup gtx |
||||
This is useful for uploading data to matrices or copying data to buffer objects. |
||||
|
||||
\brief Add support for integer for core functions |
||||
|
||||
You must include the file <glm/glx/integer.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_intersect Intersection Test Experimental Extension |
||||
\ingroup gtx |
||||
Example: |
||||
|
||||
\brief Add intersection functions |
||||
\code |
||||
#include <glm/glm.hpp> |
||||
#include <glm/glc/type_ptr.hpp> |
||||
glm::vec3 aVector(3); |
||||
glm::mat4 someMatrix(1.0); |
||||
|
||||
You must include the file <glm/glx/intersect.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_log_base Log With Base Experimental Extension |
||||
\ingroup gtx |
||||
glUniform3fv(uniformLoc, 1, glm::value_ptr(aVector)); |
||||
glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, glm::value_ptr(someMatrix)); |
||||
\endcode |
||||
|
||||
\brief Logarithm for any base. base can be a vector or a scalar. |
||||
|
||||
You must include the file <glm/glx/log_base.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_matrix_cross_product Cross Product Matrices Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Build cross product matrices |
||||
|
||||
You must include the file <glm/glx/matrix_cross_product.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_matrix_major_storage Build Matrix Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Build matrices with specific matrix order, row or column |
||||
|
||||
You must include the file <glm/glx/matrix_major_storage.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_matrix_operation Diagonal Matrix Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Build diagonal matrices from vectors. |
||||
|
||||
You must include the file <glm/glx/matrix_operation.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_matrix_query Query Matrix Properties Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Query to evaluate matrix properties |
||||
|
||||
You must include the file <glm/glx/matrix_query.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_mixed_product Mixed Product Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Mixed product of 3 vectors. |
||||
|
||||
You must include the file <glm/glx/mixed_product.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_multiple Multiples Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Find the closest number of a number multiple of other number. |
||||
|
||||
You must include the file <glm/glx/multiple.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_norm Vector Norm Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Various way to compute vector norms. |
||||
|
||||
You must include the file <glm/glx/norm.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_normal Compute Normal Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Compute the normal of a triangle. |
||||
|
||||
You must include the file <glm/glx/normal.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_normalize_dot Normalize Dot Product Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Dot product of vectors that need to be normalize with a single square root. |
||||
|
||||
You must include the file <glm/glx/normalized_dot.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_number_precision Number Precision Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Defined size types. |
||||
|
||||
You must include the file <glm/glx/number_precision.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_ocl_type OpenCL Types Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief OpenCL types. |
||||
|
||||
You must include the file <glm/glx/ocl_type.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_optimum_pow Optimum Pow Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Integer exponentiation of power functions. |
||||
|
||||
You must include the file <glm/glx/optimum_pow.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_orthonormalize Orthonormalize Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Orthonormalize matrices. |
||||
|
||||
You must include the file <glm/glx/orthonormalize.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_perpendicular Perpendicular Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Perpendicular of a vector from other one |
||||
|
||||
You must include the file <glm/glx/perpendicular.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_polar_coordinates Polar Coordinates Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Conversion from Euclidean space to polar space and revert. |
||||
|
||||
You must include the file <glm/glx/polar_coordinates.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_projection Projection Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Projection of a vector to other one |
||||
|
||||
You must include the file <glm/glx/projection.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_quaternion Quaternion Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Quaternion types and functions |
||||
|
||||
You must include the file <glm/glx/quaternion.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_random Random Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Generate random number from various distribution methods |
||||
|
||||
You must include the file <glm/glx/random.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_raw_data Raw Data Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Projection of a vector to other one |
||||
|
||||
You must include the file <glm/glx/raw_data.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_reciprocal Reciprocal Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Define secant, cosecant and cotangent functions. |
||||
|
||||
You must include the file <glm/glx/reciprocal.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_rotate_vector Rotate Vector Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Function to directly rotate a vector |
||||
|
||||
You must include the file <glm/glx/rotate_vector.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_simd_mat4 SIMD Mat4 Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief SIMD implementation of mat4 type. |
||||
|
||||
You must include the file <glm/glx/simd_mat4.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_simd_vec4 SIMD Vec4 Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief SIMD implementation of vec4 type. |
||||
|
||||
You must include the file <glm/glx/simd_vec4.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_spline Spline Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Spline functions |
||||
|
||||
You must include the file <glm/glx/spline.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_string_cast String Cast Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Setup strings for GLM type values |
||||
|
||||
You must include the file <glm/glx/transform.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_transform Transformation Matrices Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Add transformation matrices |
||||
|
||||
You must include the file <glm/glx/transform2.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_transform2 Extra Transform Matrices Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Add extra transformation matrices |
||||
|
||||
You must include the file <glm/glx/unsigned_int.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_unsigned_int Unsigned Int Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Add support for unsigned integer for core functions |
||||
|
||||
You must include the file <glm/glx/unsigned_int.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_vector_access Vector Access Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Function to set values to vectors |
||||
|
||||
You must include the file <glm/glx/vector_access.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_vector_angle Vector Angle Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Compute angle between vectors |
||||
|
||||
You must include the file <glm/glx/vector_angle.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_vector_query Vector Query Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Query informations of vector types |
||||
|
||||
You must include the file <glm/glx/vector_query.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_verbose_operator Verbose Operator Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Use words to replace operators |
||||
|
||||
You must include the file <glm/glx/verbose_operator.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/** |
||||
\defgroup gtx_wrap Wrap Experimental Extension |
||||
\ingroup gtx |
||||
|
||||
\brief Wrapping mode using my texture samping. |
||||
|
||||
You must include the file <glm/glx/wrap.hpp> to get this functionality. |
||||
You must include the file <glm/glc/type_ptr.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
|
Loading…
Reference in New Issue