parent
							
								
									1092810f2f
								
							
						
					
					
						commit
						fd21f939d8
					
				
				 44 changed files with 373 additions and 92 deletions
			
			
		| @ -1,54 +1,14 @@ | |||||||
| /// @ref core
 | /// @ref core
 | ||||||
| /// @file glm/mat2x2.hpp
 | /// @file glm/mat2x2.hpp
 | ||||||
| 
 | 
 | ||||||
| #include "detail/setup.hpp" |  | ||||||
| 
 |  | ||||||
| #pragma once | #pragma once | ||||||
| 
 | #include "dmat2x2.hpp" | ||||||
| #include "detail/type_mat2x2.hpp" | #include "fmat2x2.hpp" | ||||||
| 
 | 
 | ||||||
| namespace glm | namespace glm | ||||||
| { | { | ||||||
| 	/// 2 columns of 2 components matrix of low qualifier floating-point numbers.
 | #if GLM_HAS_TEMPLATE_ALIASES | ||||||
| 	/// There is no guarantee on the actual qualifier.
 | 	template <typename T, qualifier Q = defaultp> using tmat2x2 = mat<2, 2, T, Q>; | ||||||
| 	///
 | #endif//GLM_HAS_TEMPLATE_ALIASES
 | ||||||
| 	/// @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; |  | ||||||
| 
 | 
 | ||||||
| }//namespace glm
 | }//namespace glm
 | ||||||
|  | |||||||
| @ -0,0 +1,31 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat2x2.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat2x2.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<2, 2, double, lowp>			dmat2x2; | ||||||
|  | 	typedef mat<2, 2, double, lowp>			dmat2; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<2, 2, double, mediump>		dmat2x2; | ||||||
|  | 	typedef mat<2, 2, double, mediump>		dmat2; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 2 columns of 2 components matrix of double-precision 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 mat<2, 2, double, highp>		dmat2x2; | ||||||
|  | 
 | ||||||
|  | 	/// 2 columns of 2 components matrix of double-precision 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 mat<2, 2, double, highp>		dmat2; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,49 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat2x2_precision.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat2x2.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core_precision
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | 	/// 2 columns of 2 components matrix of double-precision floating-point numbers using low precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 double-precision floating-point numbers using medium precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 double-precision floating-point numbers using medium precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 double-precision floating-point numbers using low precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 double-precision floating-point numbers using medium precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 double-precision floating-point numbers using medium precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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; | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,24 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat2x3.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat2x3.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<2, 3, double, lowp>			dmat2x3; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<2, 3, double, mediump>		dmat2x3; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 2 columns of 3 components matrix of double-precision 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 mat<2, 3, double, highp>		dmat2x3; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,24 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat2x4.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat2x4.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<2, 4, double, lowp>			dmat2x4; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<2, 4, double, mediump>		dmat2x4; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 2 columns of 4 components matrix of double-precision 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 mat<2, 4, double, highp>		dmat2x4; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,24 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat3x2.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat3x2.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<3, 2, double, lowp>			dmat3x2; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<3, 2, double, mediump>		dmat3x2; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 3 columns of 2 components matrix of double-precision 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 mat<3, 2, double, highp>		dmat3x2; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,31 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat3x3.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat3x3.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<3, 3, double, lowp>			dmat3x3; | ||||||
|  | 	typedef mat<3, 3, double, lowp>			dmat3; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<3, 3, double, mediump>		dmat3x3; | ||||||
|  | 	typedef mat<3, 3, double, mediump>		dmat3; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 3 columns of 3 components matrix of double-precision 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 mat<3, 3, double, highp>		dmat3x3; | ||||||
|  | 
 | ||||||
|  | 	/// 3 columns of 3 components matrix of double-precision 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 mat<3, 3, double, highp>		dmat3; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,24 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat3x4.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat3x4.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<3, 4, double, lowp>			dmat3x4; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<3, 4, double, mediump>		dmat3x4; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 3 columns of 4 components matrix of double-precision 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 mat<3, 4, double, highp>		dmat3x4; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,24 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat4x2.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat4x2.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<4, 2, double, lowp>			dmat4x2; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<4, 2, double, mediump>		dmat4x2; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 4 columns of 2 components matrix of double-precision 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 mat<4, 2, double, highp>		dmat4x2; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,24 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat4x3.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat4x3.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<4, 3, double, lowp>			dmat4x3; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<4, 3, double, mediump>		dmat4x3; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 4 columns of 3 components matrix of double-precision 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 mat<4, 3, double, highp>		dmat4x3; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,31 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/dmat4x4.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat4x4.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_DOUBLE)) | ||||||
|  | 	typedef mat<4, 4, double, lowp>			dmat4x4; | ||||||
|  | 	typedef mat<4, 4, double, lowp>			dmat4; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE)) | ||||||
|  | 	typedef mat<4, 4, double, mediump>		dmat4x4; | ||||||
|  | 	typedef mat<4, 4, double, mediump>		dmat4; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
 | ||||||
|  | 	/// 4 columns of 4 components matrix of double-precision 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 mat<4, 4, double, highp>		dmat4x4; | ||||||
|  | 
 | ||||||
|  | 	/// 4 columns of 4 components matrix of double-precision 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 mat<4, 4, double, highp>		dmat4; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,32 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/mat2x2.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/setup.hpp" | ||||||
|  | #include "detail/type_mat2x2.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | #if(defined(GLM_PRECISION_LOWP_FLOAT)) | ||||||
|  | 	typedef mat<2, 2, float, lowp>		mat2x2; | ||||||
|  | 	typedef mat<2, 2, float, lowp>		mat2; | ||||||
|  | #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT)) | ||||||
|  | 	typedef mat<2, 2, float, mediump>	mat2x2; | ||||||
|  | 	typedef mat<2, 2, float, mediump>	mat2; | ||||||
|  | #else //defined(GLM_PRECISION_HIGHP_FLOAT)
 | ||||||
|  | 	/// 2 columns of 2 components matrix of single-precision 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 mat<2, 2, float, highp>		mat2x2; | ||||||
|  | 
 | ||||||
|  | 	/// 2 columns of 2 components matrix of single-precision 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 mat<2, 2, float, highp>		mat2; | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
| @ -0,0 +1,49 @@ | |||||||
|  | /// @ref core
 | ||||||
|  | /// @file glm/fmat2x2_precision.hpp
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | #include "detail/type_mat2x2.hpp" | ||||||
|  | 
 | ||||||
|  | namespace glm | ||||||
|  | { | ||||||
|  | 	/// @addtogroup core_precision
 | ||||||
|  | 	/// @{
 | ||||||
|  | 
 | ||||||
|  | 	/// 2 columns of 2 components matrix of single-precision floating-point numbers using low precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 single-precision floating-point numbers using medium precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 single-precision floating-point numbers using high precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 single-precision floating-point numbers using low precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 single-precision floating-point numbers using medium precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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 single-precision floating-point numbers using high precision arithmetic in term of ULPs.
 | ||||||
|  | 	///
 | ||||||
|  | 	/// @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; | ||||||
|  | 
 | ||||||
|  | 	/// @}
 | ||||||
|  | }//namespace glm
 | ||||||
					Loading…
					
					
				
		Reference in New Issue