GLM or OpenGL Mathematics is a C++ mathematics library created for 3D 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 is not 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 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.
Here are some key features of "GLM":
· C++,
· GCC,
· LLVM GCC,
· Clang,
· Visual C++,
· CUDA
What's New in This Release: [ read full changelog ]
· Detected qualifier for Clang
· Fixed C++11 mode for GCC, couldn't be enabled without MS extensions
· Fixed squad, intermediate and exp quaternion functions
· Fixed GTX_polar_coordinates euclidean function, takes a vec2 instead of a vec3
· Clarify the license applying on the manual
· Added a docx copy of the manual
· Fixed GLM_GTX_matrix_interpolation
· Fixed isnan and isinf on Android with Clang
· Autodetected C++ version using __cplusplus value
· Fixed mix for bool and bvec* third parameter