OpenGL Mathematics (GLM) is a C++ mathematics library for 3D software based on the OpenGL Shading Language (GLSL) specification.
</paragraph>
<paragraph>
The goal of the project is to provide to 3D programmers math classes and functions that miss in C++ when we use to program with GLSL or any high level GPU language. With GLM, the idea is to have a library that works the same way that GLSL which imply a strict following of GLSL specification for the implementation.
</paragraph>
<paragraph>
However, this project isn't limited by GLSL features. An extension system allows to extend GLSL capabilities. It allows GLM to be a great subtitute for some OpenGL 3 deprecated functions, to work following a clean programmable approach.
</paragraph>
<paragraph>
GLM is release under <linkhref="./copying.txt">MIT license</link> and available for all version of GCC from version 3.4 and Visual Studio from version 8.0 as a platform independent library.
</paragraph>
</about-long>
<about-short>
<element>GLSL + Optional features = OpenGL Mathematics (GLM).</element>
<element>A C++ mathematics library for 3D graphics.</element>
</about-short>
<about-longdate=" "title=" ">
<paragraph>
OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software
based on the <linkhref="http://www.opengl.org/documentation/glsl/">OpenGL Shading Language (GLSL)</link> specification.
</paragraph>
<paragraph>
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.
</paragraph>
<paragraph>
This project isn't limited by GLSL features.
An extension system, based on the GLSL extension conventions,
quaternions, half-based types, random numbers, etc...
</paragraph>
<paragraph>
This library works perfectly with OpenGL but it also ensures interoperability with other 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.
</paragraph>
<listname="GLM is written as a platform independent library with no dependence and officially supports the following compilers:">
<list-element><linkhref="http://http://gcc.gnu.org/">GCC</link> 3.4 and higher</list-element>
<list-element><linkhref="http://llvm.org/">LLVM</link> 2.3 through GCC 4.2 front-end and higher</list-element>
<list-element><linkhref="http://msdn.microsoft.com/en-us/visualc/default">Visual C++</link> 2005 and higher</list-element>
<list-element>Any C++ compiler following C++98 norm</list-element>
</list>
<paragraph>
The source code is under the <linkhref="./copying.txt">MIT license</link>.
</paragraph>
<paragraph>
Thanks for contributing to the project by <linkhref="https://sourceforge.net/apps/trac/ogl-math/newticket">submitting tickets</link> for bug reports and feature requests. (SF.net account required).
Any feedback is welcome at <ahref="mailto://glm@g-truc.net">glm@g-truc.net</a>.
</paragraph>
</about-long>
<about-short>
<element>GLSL + Optional features = OpenGL Mathematics (GLM).</element>
<element>A C++ mathematics library for 3D graphics.</element>