You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
		
		
		
		
		
			
		
			
				
					
					
						
							55 lines
						
					
					
						
							2.9 KiB
						
					
					
				
			
		
		
	
	
							55 lines
						
					
					
						
							2.9 KiB
						
					
					
				/*! | 
						|
	@mainpage OpenGL Mathematics | 
						|
	 | 
						|
	OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specification. | 
						|
  | 
						|
	GLM provides classes and functions designed and implemented with the same naming conventions and functionalities than GLSL so that when a programmer knows GLSL, he knows GLM as well which makes it really easy to use. | 
						|
	  | 
						|
	This project isn't limited to GLSL features. An extension system, based on the GLSL extension conventions, provides extended capabilities: matrix transformations, quaternions, half-based types, random numbers, procedural noise functions, etc... | 
						|
	  | 
						|
	This library works perfectly with OpenGL but it also ensures interoperability with third party libraries and SDKs.  | 
						|
	It is a good candidate for software rendering (Raytracing / Rasterisation), image processing, physic simulations and any context that requires a simple and convenient mathematics library. | 
						|
	 | 
						|
	GLM is written in C++98 but can take advantage of C++11 when supported by the compiler. It is a platform independent library with no dependence and officially supports the following compilers: | 
						|
	- Clang 2.6 and higher | 
						|
	- CUDA 3.0 and higher | 
						|
	- GCC 3.4 and higher | 
						|
	- Intel C++ Composer XE 2013 and higher | 
						|
	- LLVM 2.3 through GCC 4.2 front-end and higher | 
						|
	- Visual Studio 2005 and higher | 
						|
	- Any conform C++98 or C++11 compiler | 
						|
 | 
						|
	@note The Doxygen-generated documentation will often state that a type or function | 
						|
	is defined in a namespace that is a child of the @link glm glm @endlink namespace. | 
						|
	Please ignore this; All publicly available types and functions can be accessed as a direct children | 
						|
	of the glm namespace. | 
						|
	  | 
						|
	The source code is licenced under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT licence</a>. | 
						|
 | 
						|
	These pages are the API reference only. For more information about how to use GLM, please have a look at <a href="http://glm.g-truc.net/glm.pdf">the manual</a>. | 
						|
	  | 
						|
	Thanks for contributing to the project by <a href="https://github.com/g-truc/glm/issues">submitting tickets for bug reports and feature requests</a>.  | 
						|
	(SF.net account required). Any feedback is welcome at glm@g-truc.net. | 
						|
**/ | 
						|
 | 
						|
/*! | 
						|
	@page pg_differences Differences between GLSL and GLM core | 
						|
	 | 
						|
	GLM comes very close to replicating GLSL, but it is not exact. Here is a list of | 
						|
	differences between GLM and GLSL: | 
						|
	 | 
						|
	<ul> | 
						|
		<li> | 
						|
		Precision qualifiers. In GLSL numeric types can have qualifiers that define | 
						|
		the precision of that type. While OpenGL's GLSL ignores these qualifiers, OpenGL | 
						|
		ES's version of GLSL uses them. | 
						|
		 | 
						|
		C++ has no language equivalent to precision qualifiers. Instead, GLM provides | 
						|
		a set of typedefs for each kind of precision qualifier and type. These types can | 
						|
		be found in @ref core_precision "their own section". | 
						|
		 | 
						|
		Functions that take types tend to be templated on those types, so they can  | 
						|
		take these qualified types just as well as the regular ones. | 
						|
		</li> | 
						|
	</ul> | 
						|
**/
 | 
						|
 |