glm/doc/pages.doxy

54 lines
2.8 KiB
Plaintext
Raw Normal View History

2011-02-07 12:31:35 +00:00
/*!
2011-12-12 11:49:54 +00:00
@mainpage OpenGL Mathematics
2011-02-05 00:52:58 +00:00
2011-02-07 12:31:35 +00:00
OpenGL Mathematics (GLM) is a 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 by GLSL features. An extension system, based on the GLSL extension conventions, provides extended capabilities: matrix transformations, quaternions, half-based types, random numbers, etc...
This library works perfectly with OpenGL but it also ensures interoperability with other third party libraries and SDK. 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.
2011-12-12 11:58:28 +00:00
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
2011-10-25 12:00:07 +00:00
- CUDA 3.0 and higher
- GCC 3.4 and higher
- LLVM 2.3 through GCC 4.2 front-end and higher
- Visual Studio 2005 and higher
2011-12-12 11:58:28 +00:00
- Any conform C++98 or C++11 compiler
2011-02-10 16:48:39 +00:00
2011-12-12 11:49:54 +00:00
@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.
2011-02-10 16:48:39 +00:00
Please ignore this; All publicly available types and functions can be accessed as a direct children
of the glm namespace.
2011-02-07 12:31:35 +00:00
The source code is licenced under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT licence</a>.
Thanks for contributing to the project by <a href="https://sourceforge.net/apps/trac/ogl-math/newticket">submitting tickets for bug reports and feature requests</a>.
(SF.net account required). Any feedback is welcome at glm@g-truc.net.
2011-02-05 00:52:58 +00:00
2011-10-17 15:13:57 +00:00
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>.
2011-02-05 00:52:58 +00:00
**/
2011-10-24 16:11:09 +00:00
/*!
2011-12-12 11:49:54 +00:00
@page pg_differences Differences between GLSL and GLM core
2011-10-24 16:11:09 +00:00
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
2011-12-12 11:49:54 +00:00
be found in @ref core_precision "their own section".
2011-10-24 16:11:09 +00:00
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>
**/