| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766 |
- /// @ref core
- /// @file glm/detail/type_mat.hpp
- #pragma once
- #include "qualifier.hpp"
- namespace glm{
- namespace detail
- {
- template<length_t Columns, length_t Rows, typename T, qualifier P>
- struct outerProduct_trait{};
- }//namespace detail
- #if GLM_HAS_TEMPLATE_ALIASES
- template <typename T, qualifier P = defaultp> using tmat2x2 = mat<2, 2, T, P>;
- template <typename T, qualifier P = defaultp> using tmat2x3 = mat<2, 3, T, P>;
- template <typename T, qualifier P = defaultp> using tmat2x4 = mat<2, 4, T, P>;
- template <typename T, qualifier P = defaultp> using tmat3x2 = mat<3, 2, T, P>;
- template <typename T, qualifier P = defaultp> using tmat3x3 = mat<3, 3, T, P>;
- template <typename T, qualifier P = defaultp> using tmat3x4 = mat<3, 4, T, P>;
- template <typename T, qualifier P = defaultp> using tmat4x2 = mat<4, 2, T, P>;
- template <typename T, qualifier P = defaultp> using tmat4x3 = mat<4, 3, T, P>;
- template <typename T, qualifier P = defaultp> using tmat4x4 = mat<4, 4, T, P>;
- #endif//GLM_HAS_TEMPLATE_ALIASES
- template<typename T, qualifier P, template<typename, qualifier> class matType>
- GLM_FUNC_DECL matType<T, P> inverse(matType<T, P> const& m);
- /// @addtogroup core_precision
- /// @{
-
- /// 2 columns of 2 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, float, lowp> lowp_mat2;
-
- /// 2 columns of 2 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, float, mediump> mediump_mat2;
-
- /// 2 columns of 2 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, float, highp> highp_mat2;
-
- /// 2 columns of 2 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, float, lowp> lowp_mat2x2;
-
- /// 2 columns of 2 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, float, mediump> mediump_mat2x2;
-
- /// 2 columns of 2 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, float, highp> highp_mat2x2;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 2 columns of 3 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 3, float, lowp> lowp_mat2x3;
-
- /// 2 columns of 3 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 3, float, mediump> mediump_mat2x3;
-
- /// 2 columns of 3 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 3, float, highp> highp_mat2x3;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 2 columns of 4 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 4, float, lowp> lowp_mat2x4;
-
- /// 2 columns of 4 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 4, float, mediump> mediump_mat2x4;
-
- /// 2 columns of 4 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 4, float, highp> highp_mat2x4;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 3 columns of 2 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 2, float, lowp> lowp_mat3x2;
-
- /// 3 columns of 2 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 2, float, mediump> mediump_mat3x2;
-
- /// 3 columns of 2 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 2, float, highp> highp_mat3x2;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 3 columns of 3 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, float, lowp> lowp_mat3;
-
- /// 3 columns of 3 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, float, mediump> mediump_mat3;
-
- /// 3 columns of 3 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, float, highp> highp_mat3;
-
- /// 3 columns of 3 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, float, lowp> lowp_mat3x3;
-
- /// 3 columns of 3 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, float, mediump> mediump_mat3x3;
-
- /// 3 columns of 3 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, float, highp> highp_mat3x3;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 3 columns of 4 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 4, float, lowp> lowp_mat3x4;
-
- /// 3 columns of 4 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 4, float, mediump> mediump_mat3x4;
-
- /// 3 columns of 4 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 4, float, highp> highp_mat3x4;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 4 columns of 2 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 2, float, lowp> lowp_mat4x2;
-
- /// 4 columns of 2 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 2, float, mediump> mediump_mat4x2;
-
- /// 4 columns of 2 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 2, float, highp> highp_mat4x2;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 4 columns of 3 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 3, float, lowp> lowp_mat4x3;
-
- /// 4 columns of 3 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 3, float, mediump> mediump_mat4x3;
-
- /// 4 columns of 3 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 3, float, highp> highp_mat4x3;
-
- /// @}
-
-
- /// @addtogroup core_precision
- /// @{
-
- /// 4 columns of 4 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, float, lowp> lowp_mat4;
-
- /// 4 columns of 4 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, float, mediump> mediump_mat4;
-
- /// 4 columns of 4 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, float, highp> highp_mat4;
-
- /// 4 columns of 4 components matrix of low qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, float, lowp> lowp_mat4x4;
-
- /// 4 columns of 4 components matrix of medium qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, float, mediump> mediump_mat4x4;
-
- /// 4 columns of 4 components matrix of high qualifier floating-point numbers.
- /// There is no guarantee on the actual qualifier.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, float, highp> highp_mat4x4;
-
- /// @}
-
- /// @addtogroup core_types
- /// @{
-
- //////////////////////////
- // Float definition
-
- #if(defined(GLM_PRECISION_LOWP_FLOAT))
- typedef lowp_mat2x2 mat2x2;
- typedef lowp_mat2x3 mat2x3;
- typedef lowp_mat2x4 mat2x4;
- typedef lowp_mat3x2 mat3x2;
- typedef lowp_mat3x3 mat3x3;
- typedef lowp_mat3x4 mat3x4;
- typedef lowp_mat4x2 mat4x2;
- typedef lowp_mat4x3 mat4x3;
- typedef lowp_mat4x4 mat4x4;
- #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT))
- typedef mediump_mat2x2 mat2x2;
- typedef mediump_mat2x3 mat2x3;
- typedef mediump_mat2x4 mat2x4;
- typedef mediump_mat3x2 mat3x2;
- typedef mediump_mat3x3 mat3x3;
- typedef mediump_mat3x4 mat3x4;
- typedef mediump_mat4x2 mat4x2;
- typedef mediump_mat4x3 mat4x3;
- typedef mediump_mat4x4 mat4x4;
- #else
- //! 2 columns of 2 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat2x2 mat2x2;
-
- //! 2 columns of 3 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat2x3 mat2x3;
-
- //! 2 columns of 4 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat2x4 mat2x4;
-
- //! 3 columns of 2 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat3x2 mat3x2;
-
- //! 3 columns of 3 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat3x3 mat3x3;
-
- //! 3 columns of 4 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat3x4 mat3x4;
-
- //! 4 columns of 2 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat4x2 mat4x2;
-
- //! 4 columns of 3 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat4x3 mat4x3;
-
- //! 4 columns of 4 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_mat4x4 mat4x4;
-
- #endif//GLM_PRECISION
-
- //! 2 columns of 2 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef mat2x2 mat2;
-
- //! 3 columns of 3 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef mat3x3 mat3;
-
- //! 4 columns of 4 components matrix of floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef mat4x4 mat4;
-
- //////////////////////////
- // Double definition
-
- /// @addtogroup core_precision
- /// @{
-
- /// 2 columns of 2 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, double, lowp> lowp_dmat2;
-
- /// 2 columns of 2 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, double, mediump> mediump_dmat2;
-
- /// 2 columns of 2 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, double, highp> highp_dmat2;
-
- /// 2 columns of 2 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, double, lowp> lowp_dmat2x2;
-
- /// 2 columns of 2 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, double, mediump> mediump_dmat2x2;
-
- /// 2 columns of 2 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 2, double, highp> highp_dmat2x2;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 2 columns of 3 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 3, double, lowp> lowp_dmat2x3;
-
- /// 2 columns of 3 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 3, double, mediump> mediump_dmat2x3;
-
- /// 2 columns of 3 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 3, double, highp> highp_dmat2x3;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 2 columns of 4 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 4, double, lowp> lowp_dmat2x4;
-
- /// 2 columns of 4 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 4, double, mediump> mediump_dmat2x4;
-
- /// 2 columns of 4 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<2, 4, double, highp> highp_dmat2x4;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 3 columns of 2 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 2, double, lowp> lowp_dmat3x2;
-
- /// 3 columns of 2 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 2, double, mediump> mediump_dmat3x2;
-
- /// 3 columns of 2 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 2, double, highp> highp_dmat3x2;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 3 columns of 3 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, float, lowp> lowp_dmat3;
-
- /// 3 columns of 3 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, double, mediump> mediump_dmat3;
-
- /// 3 columns of 3 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, double, highp> highp_dmat3;
-
- /// 3 columns of 3 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, double, lowp> lowp_dmat3x3;
-
- /// 3 columns of 3 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, double, mediump> mediump_dmat3x3;
-
- /// 3 columns of 3 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 3, double, highp> highp_dmat3x3;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 3 columns of 4 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 4, double, lowp> lowp_dmat3x4;
-
- /// 3 columns of 4 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 4, double, mediump> mediump_dmat3x4;
-
- /// 3 columns of 4 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<3, 4, double, highp> highp_dmat3x4;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 4 columns of 2 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 2, double, lowp> lowp_dmat4x2;
-
- /// 4 columns of 2 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 2, double, mediump> mediump_dmat4x2;
-
- /// 4 columns of 2 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 2, double, highp> highp_dmat4x2;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 4 columns of 3 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 3, double, lowp> lowp_dmat4x3;
-
- /// 4 columns of 3 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 3, double, mediump> mediump_dmat4x3;
-
- /// 4 columns of 3 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 3, double, highp> highp_dmat4x3;
-
- /// @}
-
- /// @addtogroup core_precision
- /// @{
-
- /// 4 columns of 4 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, double, lowp> lowp_dmat4;
-
- /// 4 columns of 4 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, double, mediump> mediump_dmat4;
-
- /// 4 columns of 4 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, double, highp> highp_dmat4;
-
- /// 4 columns of 4 components matrix of low qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, double, lowp> lowp_dmat4x4;
-
- /// 4 columns of 4 components matrix of medium qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, double, mediump> mediump_dmat4x4;
-
- /// 4 columns of 4 components matrix of high qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier</a>
- typedef mat<4, 4, double, highp> highp_dmat4x4;
-
- /// @}
-
- #if(defined(GLM_PRECISION_LOWP_DOUBLE))
- typedef lowp_dmat2x2 dmat2x2;
- typedef lowp_dmat2x3 dmat2x3;
- typedef lowp_dmat2x4 dmat2x4;
- typedef lowp_dmat3x2 dmat3x2;
- typedef lowp_dmat3x3 dmat3x3;
- typedef lowp_dmat3x4 dmat3x4;
- typedef lowp_dmat4x2 dmat4x2;
- typedef lowp_dmat4x3 dmat4x3;
- typedef lowp_dmat4x4 dmat4x4;
- #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE))
- typedef mediump_dmat2x2 dmat2x2;
- typedef mediump_dmat2x3 dmat2x3;
- typedef mediump_dmat2x4 dmat2x4;
- typedef mediump_dmat3x2 dmat3x2;
- typedef mediump_dmat3x3 dmat3x3;
- typedef mediump_dmat3x4 dmat3x4;
- typedef mediump_dmat4x2 dmat4x2;
- typedef mediump_dmat4x3 dmat4x3;
- typedef mediump_dmat4x4 dmat4x4;
- #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
-
- //! 2 * 2 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat2x2 dmat2;
-
- //! 3 * 3 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat3x3 dmat3;
-
- //! 4 * 4 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat4x4 dmat4;
-
- //! 2 * 2 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat2x2 dmat2x2;
-
- //! 2 * 3 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat2x3 dmat2x3;
-
- //! 2 * 4 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat2x4 dmat2x4;
-
- //! 3 * 2 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat3x2 dmat3x2;
-
- /// 3 * 3 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat3x3 dmat3x3;
-
- /// 3 * 4 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat3x4 dmat3x4;
-
- /// 4 * 2 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat4x2 dmat4x2;
-
- /// 4 * 3 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat4x3 dmat4x3;
-
- /// 4 * 4 matrix of double-qualifier floating-point numbers.
- ///
- /// @see <a href="http://www.opengl.org/registry/doc/GLSLangSpec.4.20.8.pdf">GLSL 4.20.8 specification, section 4.1.6 Matrices</a>
- typedef highp_dmat4x4 dmat4x4;
- #endif//GLM_PRECISION
-
- /// @}
- }//namespace glm
|