parent
79f0f7c49f
commit
7ab3d65253
7 changed files with 133 additions and 19 deletions
@ -0,0 +1,114 @@ |
||||
/*! |
||||
\defgroup gtc GTC Extensions (Stable) |
||||
|
||||
\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. |
||||
|
||||
Even if it's highly unrecommended, you can bring all of the extensions, 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 |
||||
|
||||
\brief Defines the half-float type, along with various typedefs for vectors and matrices. |
||||
|
||||
You must include <glm/gtc/half_float.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtc_matrix_access Matrix Access Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Defines functions that allow you to access rows or columns of a matrix easily. |
||||
|
||||
You must include <glm/gtc/matrix_access.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtc_matrix_integer Integer Matrix Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Defines a number of matrices with integer types. |
||||
|
||||
You must include <glm/gtc/matrix_integer.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtc_matrix_inverse Matrix Inverse Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Defines additional matrix inverting functions. |
||||
|
||||
You must include <glm/gtc/matrix_inverse.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtc_matrix_transform Matrix Transform Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Defines functions that generate common transformation matrices. |
||||
|
||||
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. |
||||
|
||||
You must include <glm/gtc/matrix_transform.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtc_quaternion Quaternion Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Defines a templated quaternion type and several quaternion operations. |
||||
|
||||
You must include <glm/gtc/quaternion.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtc_type_precision Type Precision Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Defines specific C++-based precision types. |
||||
|
||||
\ref core_precision defines types based on GLSL's precision qualifiers. This |
||||
extension defines types based on explicitly-sized C++ data types. |
||||
|
||||
You must include the file <glm/gtc/type_precision.hpp> to get this functionality. |
||||
**/ |
||||
|
||||
/*! |
||||
\defgroup gtc_type_ptr Pointer Access Core Extension |
||||
\ingroup gtc |
||||
|
||||
\brief Used to get a pointer to the memory layout of a basic type. |
||||
|
||||
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. |
||||
|
||||
This is useful for uploading data to matrices or copying data to buffer objects. |
||||
|
||||
Example: |
||||
|
||||
\code |
||||
#include <glm/glm.hpp> |
||||
#include <glm/gtc/type_ptr.hpp> |
||||
glm::vec3 aVector(3); |
||||
glm::mat4 someMatrix(1.0); |
||||
|
||||
glUniform3fv(uniformLoc, 1, glm::value_ptr(aVector)); |
||||
glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, glm::value_ptr(someMatrix)); |
||||
\endcode |
||||
|
||||
You must include the file <glm/gtc/type_ptr.hpp> to get this functionality. |
||||
**/ |
||||
|
Loading…
Reference in New Issue