Defines functions that generate common transformation matrices. More...
Functions | |
template<typename T > | |
detail::tmat4x4< T > | frustum (T const &left, T const &right, T const &bottom, T const &top, T const &nearVal, T const &farVal) |
template<typename T > | |
detail::tmat4x4< T > | infinitePerspective (T fovy, T aspect, T zNear) |
template<typename T > | |
detail::tmat4x4< T > | lookAt (detail::tvec3< T > const &eye, detail::tvec3< T > const ¢er, detail::tvec3< T > const &up) |
template<typename T > | |
detail::tmat4x4< T > | ortho (T const &left, T const &right, T const &bottom, T const &top) |
template<typename T > | |
detail::tmat4x4< T > | ortho (T const &left, T const &right, T const &bottom, T const &top, T const &zNear, T const &zFar) |
template<typename T > | |
detail::tmat4x4< T > | perspective (T const &fovy, T const &aspect, T const &zNear, T const &zFar) |
template<typename valType > | |
detail::tmat4x4< valType > | perspectiveFov (valType const &fov, valType const &width, valType const &height, valType const &zNear, valType const &zFar) |
template<typename T , typename U > | |
detail::tmat4x4< T > | pickMatrix (detail::tvec2< T > const ¢er, detail::tvec2< T > const &delta, detail::tvec4< U > const &viewport) |
template<typename T , typename U > | |
detail::tvec3< T > | project (detail::tvec3< T > const &obj, detail::tmat4x4< T > const &model, detail::tmat4x4< T > const &proj, detail::tvec4< U > const &viewport) |
template<typename T > | |
detail::tmat4x4< T > | rotate (detail::tmat4x4< T > const &m, T const &angle, detail::tvec3< T > const &v) |
template<typename T > | |
detail::tmat4x4< T > | scale (detail::tmat4x4< T > const &m, detail::tvec3< T > const &v) |
template<typename T > | |
detail::tmat4x4< T > | translate (detail::tmat4x4< T > const &m, detail::tvec3< T > const &v) |
template<typename T > | |
detail::tmat4x4< T > | tweakedInfinitePerspective (T fovy, T aspect, T zNear) |
template<typename T , typename U > | |
detail::tvec3< T > | unProject (detail::tvec3< T > const &win, detail::tmat4x4< T > const &model, detail::tmat4x4< T > const &proj, detail::tvec4< U > const &viewport) |
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.
<glm/gtc/matrix_transform.hpp> need to be included to use these functionalities.
detail::tmat4x4<T> glm::gtc::matrix_transform::frustum | ( | T const & | left, |
T const & | right, | ||
T const & | bottom, | ||
T const & | top, | ||
T const & | nearVal, | ||
T const & | farVal | ||
) |
Creates a frustum matrix.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::infinitePerspective | ( | T | fovy, |
T | aspect, | ||
T | zNear | ||
) |
Creates a matrix for a symmetric perspective-view frustum with far plane at infinite .
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::lookAt | ( | detail::tvec3< T > const & | eye, |
detail::tvec3< T > const & | center, | ||
detail::tvec3< T > const & | up | ||
) |
Build a look at view matrix.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::ortho | ( | T const & | left, |
T const & | right, | ||
T const & | bottom, | ||
T const & | top | ||
) |
Creates a matrix for projecting two-dimensional coordinates onto the screen.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::ortho | ( | T const & | left, |
T const & | right, | ||
T const & | bottom, | ||
T const & | top, | ||
T const & | zNear, | ||
T const & | zFar | ||
) |
Creates a matrix for an orthographic parallel viewing volume.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::perspective | ( | T const & | fovy, |
T const & | aspect, | ||
T const & | zNear, | ||
T const & | zFar | ||
) |
Creates a matrix for a symetric perspective-view frustum.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<valType> glm::gtc::matrix_transform::perspectiveFov | ( | valType const & | fov, |
valType const & | width, | ||
valType const & | height, | ||
valType const & | zNear, | ||
valType const & | zFar | ||
) |
Builds a perspective projection matrix based on a field of view From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::pickMatrix | ( | detail::tvec2< T > const & | center, |
detail::tvec2< T > const & | delta, | ||
detail::tvec4< U > const & | viewport | ||
) |
Define a picking region From GLM_GTC_matrix_transform extension.
detail::tvec3<T> glm::gtc::matrix_transform::project | ( | detail::tvec3< T > const & | obj, |
detail::tmat4x4< T > const & | model, | ||
detail::tmat4x4< T > const & | proj, | ||
detail::tvec4< U > const & | viewport | ||
) |
Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::rotate | ( | detail::tmat4x4< T > const & | m, |
T const & | angle, | ||
detail::tvec3< T > const & | v | ||
) |
Builds a rotation 4 * 4 matrix created from an axis vector and an angle expressed in degrees.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::scale | ( | detail::tmat4x4< T > const & | m, |
detail::tvec3< T > const & | v | ||
) |
Builds a scale 4 * 4 matrix created from 3 scalars.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::translate | ( | detail::tmat4x4< T > const & | m, |
detail::tvec3< T > const & | v | ||
) |
Builds a translation 4 * 4 matrix created from a vector of 3 components.
From GLM_GTC_matrix_transform extension.
detail::tmat4x4<T> glm::gtc::matrix_transform::tweakedInfinitePerspective | ( | T | fovy, |
T | aspect, | ||
T | zNear | ||
) |
Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping.
From GLM_GTC_matrix_transform extension.
detail::tvec3<T> glm::gtc::matrix_transform::unProject | ( | detail::tvec3< T > const & | win, |
detail::tmat4x4< T > const & | model, | ||
detail::tmat4x4< T > const & | proj, | ||
detail::tvec4< U > const & | viewport | ||
) |
Map the specified window coordinates (win.x, win.y, win.z) into object coordinates.
From GLM_GTC_matrix_transform extension.