From 1003972abaac386baab194c88f8a513ec4bf2b6d Mon Sep 17 00:00:00 2001 From: Christophe Riccio Date: Fri, 30 Apr 2010 17:20:04 +0100 Subject: [PATCH] Updated documentation --- doc/src/bug.xsl | 116 -- doc/src/changelog.xsl | 55 - doc/src/data.xml | 2747 +++++++++++++++++++++-------------------- doc/src/issue.xsl | 120 -- doc/src/util.xsl | 3 - glm/glm.hpp | 4 +- 6 files changed, 1391 insertions(+), 1654 deletions(-) delete mode 100644 doc/src/bug.xsl delete mode 100644 doc/src/changelog.xsl delete mode 100644 doc/src/issue.xsl diff --git a/doc/src/bug.xsl b/doc/src/bug.xsl deleted file mode 100644 index 47f4057a..00000000 --- a/doc/src/bug.xsl +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - - - - - OpenGL Mathematics : Bugs - - - - - - -
- OpenGL Mathematics -
- - - - - -
- -
- - G-Truc Creation - - - -
- - -
-
Bugs
-
- -
-
- - -
- )
-
-
- -
-
- STATUE : , -
-
-
-
- - -
- : -
-
- -
diff --git a/doc/src/changelog.xsl b/doc/src/changelog.xsl deleted file mode 100644 index eb440b4b..00000000 --- a/doc/src/changelog.xsl +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - - - - - OpenGL Mathematics : Changelog - - - - - - - - - - - -
-
- OpenGL Mathematics -
- -
- - -
- - -
- - -
- :
-
- -
_________________
-
-
- - -
- -
-
-
- -
diff --git a/doc/src/data.xml b/doc/src/data.xml index 70e42103..57b9b526 100644 --- a/doc/src/data.xml +++ b/doc/src/data.xml @@ -2,69 +2,73 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + @@ -91,779 +95,779 @@
-
- -
+
+ +
- - Euler angles operation with specified rotation order - Cast to other toolkit (D3D, some engines) - Arrays - SIMD optimisations - Standard output stream - In place operations - - - GLSL 1.30, more templated code, better API documentation, use of CMake. - Hint. - First GTC extensions. - More tests. - Arrays. - SIMD optimizations. - In place operations. - - - bit rotation. - frexp - RGBE. - row matrices. - Optimize *mat4 inverse. - fixed numbers - row and column major matrices - - - - Promoted double types - - - Removed global inclusion. - Removed auto cast setup. - Removed compatibility setup. - Clean up and simplify setup.hpp - Fixed website links - - - Added missing inline. - Added common vecType for vector based types. - Updated copyright date. - Refactoring of type precision - GLM types are now more generic - Extract vec1 code - Reduced namespaces count - - - GLM 0.8.4.4 released. - - - Fixed warnings. - - - Added texcoord wrapping through GLM_IMG_wrap extension. - - - Reorganized SVN directory. - - - GLM 0.8.4.3 released. - - - Fixed half arithmetic. - - - Added scalars support for GLM_IMG_multiple. - - - Fixed setup defines. - - - Added GLM_IMG_multiple extensions and unit tests. - - - GLM 0.8.4.2 released. - - - Fixed half. - - - GLM 0.8.4.1 released. - - - Updated documentation. - - - Updated manual. - Added static assert implementation. - Removed unuse GLM_SWIZZLE_FUNC. - - - Some progress on fixing GLM for MacOSX comflics. - - - Fixed GLM_GTX_quaternion extension: cross and intermediate. - - - Fixed quaternion angle. - - - Updated documentation. - GLM 0.8.4.0 released. - - - Added Visual Studio 2010 support. - Fixed build on GCC. - Added GCC 4.4 support. - - - Added no initilization constructor to vec4. - - - Added no initilization constructor to mat4. - Updated GLM_GTC_matrix_transform: faster rotate. - - - Added GLM_GTX_matrix_operation: build diagonal matrix. - Updated GLM_GTC_matrix_transform: faster scaling. - - - Fixed transpose function for mat4x3. - Optimized translate function for mat4 matrix: ~184 cycles instead of ~592 cycles on Q6600. - - - Fixed OpenGL dependence. - Added OpenGL 3 dependence. - - - Fixed parameter definition and definition mismatch. - - - Fixed GLM_GTC_matrix_projection. - Updated GLM_GTX_transform: Added missing entry points. - GLM 0.8.3.5 released. - - - Move inverse function to core following GLSL 1.4 specification. - Move determinant function to core following GLSL 1.5 specification. - GLM 0.8.3.4 released. - - - Fixed GLM_GTX_matrix_query extension: Fixed row_size and col_size() calls. - Fixed GLM_GTX_matrix_access extension: Fixed row_size calls. - - - Fixed GLM_GTX_string_cast extension: Build on GCC 4. - Fixed GLM_GTC_quaternion extension: rotate function build. - - - Fixed GLM_GTC_matrix_transform extension: Fixed matrix operation order; like OpenGL instead of like Direct3D. - GLM 0.8.3.3 released. - - - Fixed GLM_GTX_rotate_vector extension: Fixed rotate function. - - - Fixed matrix external operators. - - - Added GLM_GTC_type_precision extension. - GLM 0.8.3.2 released. - - - Fixed GLM_GTC_matrix_transform: Fixed mat4 inverse function. - - - Added GLM_GTC_quaternion extension. - Updated GLM_GTC_quaternion extension. - Fixed GLM_GTC_matrix_transform extension. - - - GLM 0.8.3.1 released. - - - Updated GLM_GTX_bit extension: Added lowestBit functions. - Fixed old extention inclusion method. - - - Updated sse mat4 implementation. - - - Updated GLM_GTX_bit extension: Added bitRevert, bitRotateRight and bitRotateLeft functions. - - - Added intrinsic like functions for mat4 product and inverse. - - - Added intrinsic like functions for mat4 and vec4 products. - - - Fixed GLM_GTX_type_ptr extension. - GLM 0.8.3.0 released. - - - Fixed GLM_GTC_matrix_projection: glm::project build. - - - Added new extensions inclusion system. - - - Fixed GLM_GTX_determinant extension. - Reorganized extensions. - Removed GLM_GTX_vector_comp_mult and GLM_GTX_mat4x3 extensions. - Renamed .h files to .hpp. - - - Added GLM_GTC_half_float. - - - Fixed GLM_GTX_perpendicular extension. - Fixed GLM_GTX_matrix_projection extension. - Fixed GLM_GTX_transform2 extension. - - - Added GLM_GTC_matrix_operation. - Added GLM_GTC_matrix_transform. - Added GLM_GTC_matrix_projection. - Added GLM_GTC_double_float. - - - Fixed bug 2774738. - Fixed bug 2774015. - - - GLM 0.8.2.3 released. - - - Updaded mix function: Makes it more flexible, types wise. - - - Fixed GLM_GTX_perpendicular and GLM_GTX_projection. - Added GLM_GTX_radial_gradient extensions. - - - Fixed GCC 4.3 pedantic build. - GLM 0.8.2.2 released. - - - Removed all deprecated ARB conventions. - - - Fixed highp_int_t and highp_uint_t with Linux 64. - Fixed GCC 4.3 'extra ;' with pedentic build. - - - Fixed build. - GLM 0.8.2.1 released. - - - Fixed build. - Added extensions build test. - - - GLM 0.8.2 released. - - - Fixed GLM_GTX_intersect: intersectRayTriangle. - - - Fixed vectors access operators. - Fixed unresolved with quaternions. - - - Fixed GLM_GTX_norm: Include issue. - - - Fixed left value swizzle operators. - - - Fixed GLM_GTX intersect extension: intersectRayTriangleGTX with GCC. - Typo. - - - Fixed GLM_GTX inverse_transpose extension. - - - Updated quaternion implementation. - - - Added GLM_GTX_raw_data extension. - - - Updated GLM_GTX_bit extension: Added mask function. - - - Updated GLM_GTX_bit extension: Added extractField function. - Fixed STATIC_ASSERT with 64bits integers. - - - GLM 0.8.1 released. - - - Fixed mix function with boolean parameter. - Fixed value_size issue. - - - Fixed GLM_GTX_component_wise extension. - Added GLM_GTX_color_space_YCoCg extension. - - - Added GLM_GTX_comparison extension: Defined comparison operators for vectors. - - - Added GLM_GTX_log_base extension. - - - Fixed 64 bits integers with GCC. - Deleted deprecated half number setup options. - Updated GLM_GTX_number_precision: Clean up and added missing type definitions. - Updated GLM_GTX_color_cast: Clean up and fixes. - - - Updated manuel and documentation. - GLM 0.8.0 final released. - - - Fixed glm::size_t possible collisions with std::size_t. glm::size_t is now named glm::sizeType. - Updated GLM_VIRTREV_address extension: Added none const fonctions. - Updated GLM_GTX_double_float extension: Typo. - Added new API to use extension. - - - Added logos in varius resolutions. - - - Updated website. - Added website builder. - - - Updated GLM_GTX_number_precision: No more warning with type size tests. - Fixed none consistent size_t. - - - Updated website. - - - Fixed build. - Updated manual. - GLM 0.8.0 beta3 released. - - - Added GLM_GTX_reciprocal extension: Define sec, csc, cot, asec, acsc, acot, sech, csch, coth, asech, acsch and acoth functions. - - - Updated GLM_GTX_euler_angles extension: Added functions to build rotation matrices. - - - Fixed GLM_GTX_color_space: Fixed conflits with swizzle operators. - Fixed virtrev.h, didn't build. - Fixed genType build. - Fixed GLM_GTX_compatibility build. - Added GLM_VIRTREV_address: Get the address of internal vector or matrix contents. - Fixed code typo and clean up. - - - Added genType class. For long term base class for all types though template specialization. - Updated project directory. - Added CMakeFile in test directory. - Fixed code typo and clean up. - Fixed GLM_GTX_string_cast: Missing some matrix definitions, some wrong behaviours with matrices. - - - Added glm::sizeType type which is used to defined size of all vectors and matrices. Defined as std::size_t. - row_size, col_size and is_matrix are now functions. - Fixed use inline on *mat4 function declaration. - Deleted auto cast from *mat4x3. - Fixed missing ++ -- and - operators to some matrix types. - Fixed typo. - - - GLM 0.8.0 beta2 released. - - - value_size and is_vector are now functions. - - - Added GLM_USE_ANONYMOUS_UNION: To use anonymous union to provide multiple component names access for class valType. Visual C++ only. - Removed noise function from documentation. - - - Fixed build with GCC. - Updated manual. - - - Updated GLM_GTX_bit implementation. - Added GLM_USE_ONLY_XYZW to disable multiple component names. - Updated GLM_GTX_euler_angles extension: added yawPitchRoll function. - - - Fixed half vector build. - Updated GLM_GTX_vector_angle: Added orientedAngleFromRef function. - Deprecated GLM_GTX_mul extension. Features moved in GLM_GTX_verbose_operator. - Updated GLM_GTX_verbose_operator: Added mad function. - - - Fixed missing inline in tvec3 and tvec4 definisions. - New implementation of hvec3 thought specialisation of tvec3 template. - New implementation of hvec4 thought specialisation of tvec4 template. - Fixed tvec4 operators than where applied just on 3 components. - - - Added build option for build that support anonymous structure. - Fixed missing inline in tvec2 definision. - New implementation of hvec2 thought specialisation of tvec2 template. - - - Updated documentation. - GLM 0.8.0 beta1 released. - - - Fixed static asserts within vector and matrix types. - Updated mix function implementation, support for boolean vectors. - - - Fixed static asserts. - Added some asserts. - Updated matrices operator[]. - - - Added GLM_VIRTREV_equal_operator: Operators that compare vectors. - Fixed build errors from static asserts. - - - Fixed build errors with GCC. - Fixed func_trigonometric.h encoding. - - - Deleted GLM_GTX_INCLUDED. - Fixed build errors. - Fixed GLM_GTX_random: Bad assert definition. - - - Updated manual. - Updated swizzle operators with swizzle function. - Added modf definition. - - - Added namespaces to sort type and function in the API documentation. - Deleted some documentations from {__}*GTX types and functions from extensions. - Updated vectors and matrices documentation. - Updated scalars and precisions documentation. - Fixed some vectors and matrices declaration missing in some cases. - Updated overall documentation. - - - Included all types in type namespace. - - - Added type namespace in glm namespace for documentation purpose. - - - Added modf definition for vec2, vec3 and vec4. - Updated static assert to exponential, geometric, matrix, noise, trigonometric and vector relational functions. - Added GLM_GTC_matrix_transformation extensions: API and translate, rotate and scale definisions. - Deprecated GLM_GTX_gpu_shader4, GLM_GTX_hyperbolic, GLM_GTX_flexible_mix, GLM_GTX_round. - Added definition of mix with last parameter being booleans. - Added hint classes. - Updated GLM_GTX_integer, GLM_GTX_unsigned_int, GLM_GTX_half and GLM_GTX_double_float extensions. - - - Added trait code (class type) to detect bool, float, int and uint numbers. - Updated static assert to common functions. - - - Updated noise function definitions... Still unsure for staying in GLM 0.8.0. - - - Updated overall documentation, doxygen documentation. - - - Updated documentation and implementation of all matrix functions. - Added declaration of main functions for each function group namespace. - Updated documentation and API of all noise functions... Should be deleted becose of bad implementation? - - - Updated documentation and implementation of all vector relational functions. - Added transpose_type typedef to all matrix types. - Added is_matrix static constantes to all matrix types for static assert usage. - Added is_vector static constantes to all vector types for static assert usage. - - - Updated documentation and implementation of all geometric functions. - - - Updated documentation and implementation of all exponential functions. - - - Added isinf and isnan GLSL 1.3 functions. - Updated common functions code, mostly syntax. - Added trunc, round and roundEven GLSL 1.3 functions. - Added sinh, cosh, tanh, asinh, acosh and atanh GLSL 1.3 functions. - Updated documentation and implementation of all trigonometric functions. - - - Added bool_type implementation detail to vector types. - - - Added API and documentation of all common functions. - - - Updated GLM_GTX_extensions: Define operator* as a cross product. Still in WIP... - - - Updated *vec2 and *vec3 with precision types missed and documentation. - - - Fixed 2085925 bug: rotateGTX didn't use it quaternion parameter. - - - Added test files. - Updated *vec4 with precision types missed and documentation. - - - Renamed implementation files. - Updated type pre-declarations. - - - Fixed GLM_GTX_matrix_projection extension: frustum function gave a wrong result. - - - Updated matrix types functions and extensions according new vectors types. - - - Added new vector types implementation. - - - Added support for new GLSL 1.30 precision model. - - - Added GLSL 1.30.08 unsigned int types support - - - Added detail::vec1 type. - Added detail::desc for types description and higher templatisation. - - - Started work on GLM 0.8.x based on GLSL 1.3 specification. - Visual Studio .NET 2003 (7.1) is now deprecated. - GLM_FORCE_HALF_COMPATIBILITY is now deprecated. - GLM_AUTO_CAST is now deprecated. - - - Updated GLM_GTX_fast_square_root implementation: Updated fastInverseSqrt - - - Updated documentation. - GLM 0.7.6 released. - - - gl_svec* (for GLshort) added in GLM_virtrev_gl extension. - Updated detail implementation of vector types. - Make Visual C++ build with Visual C++ extensions disabled. - Rename "not" to "not_" for compatibility. - Fixed GLM_GTX_fast_square_root build. - - - Fixed GLM_GTX_component_wise extension. - - - Updated mix functions for optimization purpose. - Fixed mix functions static assert. - Updated test files. - Updated GLM_GTX_statistics_operation. - - - Fixed GLM_GTX_bit extension: isPowerOfTwoGTX works for signed int too. - Updated GLM_GTX_norm extension: Added distance2, l2norm and lxNorm functions. - Added some boost static assert. - - - Added GLM_GTX_std_based_type: Types based on C++ conventions. - Added files for extension tests. - - - Fixed GLM_GTX_fast_square_root: Updated fastDistance. - - - Fixed GLM_GTX_fast_square_root: Wrong const and updated fastLenght. - Optimized mix core function - - - Fixed GLM_GTX_epsilon: Wrong function definitions for y, z and w components. - - - Fixed GLM_GTX_flexible: Flexible with scalar only failed. - Fixed GLM_GTX_quaternion: One rotate overloaded function undefined. - - - Some fixes on GLM_GTX_intersect extension. - - - GLM 0.7.5 released. - - - Updated documentation. - - - Updated message system. - - - Added new message system. - - - Fixed GLM_GTX_normal extension. - - - Updated GLM_GTX_unsigned_int extension. (New typedef extensions) - - - Added new precompiler system. - - - Increase C++ conformance. - - - Fixed build errors. - GLM 0.7.4 released. - - - Updated external dependencies system. - Updated manual. - Fixed GLM_GTX_random extension: Fixed build with GCC. - Fixed GLM_GTX_string_cast extension: Fixed build with GCC 3.4 due to GCC anonymuous namespace bug. - - - Fixed GLM_GTX_transform2 extension: scaleBias didn't built. - - - Added GLM_VIRTREV_xstream extension: XML output for GLM types. - Added external library system - - - Updated GLM_GTX_string_cast extension: Support of non-square matrices. - GLM 0.7.3 released. - - - Fixed mat2 product. - - - Fixed GLM_GTX_transform2 dependencies. - - - Added GLM_VIRTREV_gl extension: Vector and matrix integration with OpenGL. - - - Updated GLM_GTX_number_precision extension: Added uint type. - Added GLM_GTX_string_cast extension: Create formated string from GLM type instances. - Updated GLM_GTX_transform2: added scaleBias matrix build - - - GLM 0.7.2 released. - - - Added GLM_AUTO_CAST setup option. - Updated documentation - - - Updated GLM_GTX_inverse, added affine inverse functions for fast matrix inverts. - Updated overall documentation - Added trait typedef to all GLM data types - - - Updated GLM_GTX_compatibility documentation. - Fixed GLM_GTX_random, gauss functions didn't build. - - - Added few SSE code. - Fixed matrix projections. - - - Added GLM_SWIZZLE_FUNC swizzle option. - - - Updated GLM_GTX_euler_angles documentation. - - - Updated documentation. - - - Fixed GLM_GTX_associated_min_max build on GCC. - Updated GLM_GTX_matrix_projection. - GLM 0.7.1 released. - - - GLM 0.7.0 released. - - - Updated manual. - - - Updated documentation. - Added GLM_GTX_associated_min_max extension. - - - Fixed not function with GCC. - - - Fixed interger pow function for the case of a null power. - - - Fixed mat4x2 and mat4x3 GCC build. - Updated documentation. - Reseted glmsetup.h to default values. - - - Fixed missing xvec4 constructor with bool argument definition. - Fixed namespace collision in quaternion inverse function. - Fixed swizzle operators involved in operations. - Change license from GNU LGPL to MIT. - - - Fixed missing xvec4 ++ and -- operator definition. - - - Move some implementation details into detail namespace. - + + Euler angles operation with specified rotation order + Cast to other toolkit (D3D, some engines) + Arrays + SIMD optimisations + Standard output stream + In place operations + + + GLSL 1.30, more templated code, better API documentation, use of CMake. + Hint. + First GTC extensions. + More tests. + Arrays. + SIMD optimizations. + In place operations. + + + bit rotation. + frexp + RGBE. + row matrices. + Optimize *mat4 inverse. + fixed numbers + row and column major matrices + + + + Promoted double types + + + Removed global inclusion. + Removed auto cast setup. + Removed compatibility setup. + Clean up and simplify setup.hpp + Fixed website links + + + Added missing inline. + Added common vecType for vector based types. + Updated copyright date. + Refactoring of type precision + GLM types are now more generic + Extract vec1 code + Reduced namespaces count + + + GLM 0.8.4.4 released. + + + Fixed warnings. + + + Added texcoord wrapping through GLM_IMG_wrap extension. + + + Reorganized SVN directory. + + + GLM 0.8.4.3 released. + + + Fixed half arithmetic. + + + Added scalars support for GLM_IMG_multiple. + + + Fixed setup defines. + + + Added GLM_IMG_multiple extensions and unit tests. + + + GLM 0.8.4.2 released. + + + Fixed half. + + + GLM 0.8.4.1 released. + + + Updated documentation. + + + Updated manual. + Added static assert implementation. + Removed unuse GLM_SWIZZLE_FUNC. + + + Some progress on fixing GLM for MacOSX comflics. + + + Fixed GLM_GTX_quaternion extension: cross and intermediate. + + + Fixed quaternion angle. + + + Updated documentation. + GLM 0.8.4.0 released. + + + Added Visual Studio 2010 support. + Fixed build on GCC. + Added GCC 4.4 support. + + + Added no initilization constructor to vec4. + + + Added no initilization constructor to mat4. + Updated GLM_GTC_matrix_transform: faster rotate. + + + Added GLM_GTX_matrix_operation: build diagonal matrix. + Updated GLM_GTC_matrix_transform: faster scaling. + + + Fixed transpose function for mat4x3. + Optimized translate function for mat4 matrix: ~184 cycles instead of ~592 cycles on Q6600. + + + Fixed OpenGL dependence. + Added OpenGL 3 dependence. + + + Fixed parameter definition and definition mismatch. + + + Fixed GLM_GTC_matrix_projection. + Updated GLM_GTX_transform: Added missing entry points. + GLM 0.8.3.5 released. + + + Move inverse function to core following GLSL 1.4 specification. + Move determinant function to core following GLSL 1.5 specification. + GLM 0.8.3.4 released. + + + Fixed GLM_GTX_matrix_query extension: Fixed row_size and col_size() calls. + Fixed GLM_GTX_matrix_access extension: Fixed row_size calls. + + + Fixed GLM_GTX_string_cast extension: Build on GCC 4. + Fixed GLM_GTC_quaternion extension: rotate function build. + + + Fixed GLM_GTC_matrix_transform extension: Fixed matrix operation order; like OpenGL instead of like Direct3D. + GLM 0.8.3.3 released. + + + Fixed GLM_GTX_rotate_vector extension: Fixed rotate function. + + + Fixed matrix external operators. + + + Added GLM_GTC_type_precision extension. + GLM 0.8.3.2 released. + + + Fixed GLM_GTC_matrix_transform: Fixed mat4 inverse function. + + + Added GLM_GTC_quaternion extension. + Updated GLM_GTC_quaternion extension. + Fixed GLM_GTC_matrix_transform extension. + + + GLM 0.8.3.1 released. + + + Updated GLM_GTX_bit extension: Added lowestBit functions. + Fixed old extention inclusion method. + + + Updated sse mat4 implementation. + + + Updated GLM_GTX_bit extension: Added bitRevert, bitRotateRight and bitRotateLeft functions. + + + Added intrinsic like functions for mat4 product and inverse. + + + Added intrinsic like functions for mat4 and vec4 products. + + + Fixed GLM_GTX_type_ptr extension. + GLM 0.8.3.0 released. + + + Fixed GLM_GTC_matrix_projection: glm::project build. + + + Added new extensions inclusion system. + + + Fixed GLM_GTX_determinant extension. + Reorganized extensions. + Removed GLM_GTX_vector_comp_mult and GLM_GTX_mat4x3 extensions. + Renamed .h files to .hpp. + + + Added GLM_GTC_half_float. + + + Fixed GLM_GTX_perpendicular extension. + Fixed GLM_GTX_matrix_projection extension. + Fixed GLM_GTX_transform2 extension. + + + Added GLM_GTC_matrix_operation. + Added GLM_GTC_matrix_transform. + Added GLM_GTC_matrix_projection. + Added GLM_GTC_double_float. + + + Fixed bug 2774738. + Fixed bug 2774015. + + + GLM 0.8.2.3 released. + + + Updaded mix function: Makes it more flexible, types wise. + + + Fixed GLM_GTX_perpendicular and GLM_GTX_projection. + Added GLM_GTX_radial_gradient extensions. + + + Fixed GCC 4.3 pedantic build. + GLM 0.8.2.2 released. + + + Removed all deprecated ARB conventions. + + + Fixed highp_int_t and highp_uint_t with Linux 64. + Fixed GCC 4.3 'extra ;' with pedentic build. + + + Fixed build. + GLM 0.8.2.1 released. + + + Fixed build. + Added extensions build test. + + + GLM 0.8.2 released. + + + Fixed GLM_GTX_intersect: intersectRayTriangle. + + + Fixed vectors access operators. + Fixed unresolved with quaternions. + + + Fixed GLM_GTX_norm: Include issue. + + + Fixed left value swizzle operators. + + + Fixed GLM_GTX intersect extension: intersectRayTriangleGTX with GCC. + Typo. + + + Fixed GLM_GTX inverse_transpose extension. + + + Updated quaternion implementation. + + + Added GLM_GTX_raw_data extension. + + + Updated GLM_GTX_bit extension: Added mask function. + + + Updated GLM_GTX_bit extension: Added extractField function. + Fixed STATIC_ASSERT with 64bits integers. + + + GLM 0.8.1 released. + + + Fixed mix function with boolean parameter. + Fixed value_size issue. + + + Fixed GLM_GTX_component_wise extension. + Added GLM_GTX_color_space_YCoCg extension. + + + Added GLM_GTX_comparison extension: Defined comparison operators for vectors. + + + Added GLM_GTX_log_base extension. + + + Fixed 64 bits integers with GCC. + Deleted deprecated half number setup options. + Updated GLM_GTX_number_precision: Clean up and added missing type definitions. + Updated GLM_GTX_color_cast: Clean up and fixes. + + + Updated manuel and documentation. + GLM 0.8.0 final released. + + + Fixed glm::size_t possible collisions with std::size_t. glm::size_t is now named glm::sizeType. + Updated GLM_VIRTREV_address extension: Added none const fonctions. + Updated GLM_GTX_double_float extension: Typo. + Added new API to use extension. + + + Added logos in varius resolutions. + + + Updated website. + Added website builder. + + + Updated GLM_GTX_number_precision: No more warning with type size tests. + Fixed none consistent size_t. + + + Updated website. + + + Fixed build. + Updated manual. + GLM 0.8.0 beta3 released. + + + Added GLM_GTX_reciprocal extension: Define sec, csc, cot, asec, acsc, acot, sech, csch, coth, asech, acsch and acoth functions. + + + Updated GLM_GTX_euler_angles extension: Added functions to build rotation matrices. + + + Fixed GLM_GTX_color_space: Fixed conflits with swizzle operators. + Fixed virtrev.h, didn't build. + Fixed genType build. + Fixed GLM_GTX_compatibility build. + Added GLM_VIRTREV_address: Get the address of internal vector or matrix contents. + Fixed code typo and clean up. + + + Added genType class. For long term base class for all types though template specialization. + Updated project directory. + Added CMakeFile in test directory. + Fixed code typo and clean up. + Fixed GLM_GTX_string_cast: Missing some matrix definitions, some wrong behaviours with matrices. + + + Added glm::sizeType type which is used to defined size of all vectors and matrices. Defined as std::size_t. + row_size, col_size and is_matrix are now functions. + Fixed use inline on *mat4 function declaration. + Deleted auto cast from *mat4x3. + Fixed missing ++ -- and - operators to some matrix types. + Fixed typo. + + + GLM 0.8.0 beta2 released. + + + value_size and is_vector are now functions. + + + Added GLM_USE_ANONYMOUS_UNION: To use anonymous union to provide multiple component names access for class valType. Visual C++ only. + Removed noise function from documentation. + + + Fixed build with GCC. + Updated manual. + + + Updated GLM_GTX_bit implementation. + Added GLM_USE_ONLY_XYZW to disable multiple component names. + Updated GLM_GTX_euler_angles extension: added yawPitchRoll function. + + + Fixed half vector build. + Updated GLM_GTX_vector_angle: Added orientedAngleFromRef function. + Deprecated GLM_GTX_mul extension. Features moved in GLM_GTX_verbose_operator. + Updated GLM_GTX_verbose_operator: Added mad function. + + + Fixed missing inline in tvec3 and tvec4 definisions. + New implementation of hvec3 thought specialisation of tvec3 template. + New implementation of hvec4 thought specialisation of tvec4 template. + Fixed tvec4 operators than where applied just on 3 components. + + + Added build option for build that support anonymous structure. + Fixed missing inline in tvec2 definision. + New implementation of hvec2 thought specialisation of tvec2 template. + + + Updated documentation. + GLM 0.8.0 beta1 released. + + + Fixed static asserts within vector and matrix types. + Updated mix function implementation, support for boolean vectors. + + + Fixed static asserts. + Added some asserts. + Updated matrices operator[]. + + + Added GLM_VIRTREV_equal_operator: Operators that compare vectors. + Fixed build errors from static asserts. + + + Fixed build errors with GCC. + Fixed func_trigonometric.h encoding. + + + Deleted GLM_GTX_INCLUDED. + Fixed build errors. + Fixed GLM_GTX_random: Bad assert definition. + + + Updated manual. + Updated swizzle operators with swizzle function. + Added modf definition. + + + Added namespaces to sort type and function in the API documentation. + Deleted some documentations from {__}*GTX types and functions from extensions. + Updated vectors and matrices documentation. + Updated scalars and precisions documentation. + Fixed some vectors and matrices declaration missing in some cases. + Updated overall documentation. + + + Included all types in type namespace. + + + Added type namespace in glm namespace for documentation purpose. + + + Added modf definition for vec2, vec3 and vec4. + Updated static assert to exponential, geometric, matrix, noise, trigonometric and vector relational functions. + Added GLM_GTC_matrix_transformation extensions: API and translate, rotate and scale definisions. + Deprecated GLM_GTX_gpu_shader4, GLM_GTX_hyperbolic, GLM_GTX_flexible_mix, GLM_GTX_round. + Added definition of mix with last parameter being booleans. + Added hint classes. + Updated GLM_GTX_integer, GLM_GTX_unsigned_int, GLM_GTX_half and GLM_GTX_double_float extensions. + + + Added trait code (class type) to detect bool, float, int and uint numbers. + Updated static assert to common functions. + + + Updated noise function definitions... Still unsure for staying in GLM 0.8.0. + + + Updated overall documentation, doxygen documentation. + + + Updated documentation and implementation of all matrix functions. + Added declaration of main functions for each function group namespace. + Updated documentation and API of all noise functions... Should be deleted becose of bad implementation? + + + Updated documentation and implementation of all vector relational functions. + Added transpose_type typedef to all matrix types. + Added is_matrix static constantes to all matrix types for static assert usage. + Added is_vector static constantes to all vector types for static assert usage. + + + Updated documentation and implementation of all geometric functions. + + + Updated documentation and implementation of all exponential functions. + + + Added isinf and isnan GLSL 1.3 functions. + Updated common functions code, mostly syntax. + Added trunc, round and roundEven GLSL 1.3 functions. + Added sinh, cosh, tanh, asinh, acosh and atanh GLSL 1.3 functions. + Updated documentation and implementation of all trigonometric functions. + + + Added bool_type implementation detail to vector types. + + + Added API and documentation of all common functions. + + + Updated GLM_GTX_extensions: Define operator* as a cross product. Still in WIP... + + + Updated *vec2 and *vec3 with precision types missed and documentation. + + + Fixed 2085925 bug: rotateGTX didn't use it quaternion parameter. + + + Added test files. + Updated *vec4 with precision types missed and documentation. + + + Renamed implementation files. + Updated type pre-declarations. + + + Fixed GLM_GTX_matrix_projection extension: frustum function gave a wrong result. + + + Updated matrix types functions and extensions according new vectors types. + + + Added new vector types implementation. + + + Added support for new GLSL 1.30 precision model. + + + Added GLSL 1.30.08 unsigned int types support + + + Added detail::vec1 type. + Added detail::desc for types description and higher templatisation. + + + Started work on GLM 0.8.x based on GLSL 1.3 specification. + Visual Studio .NET 2003 (7.1) is now deprecated. + GLM_FORCE_HALF_COMPATIBILITY is now deprecated. + GLM_AUTO_CAST is now deprecated. + + + Updated GLM_GTX_fast_square_root implementation: Updated fastInverseSqrt + + + Updated documentation. + GLM 0.7.6 released. + + + gl_svec* (for GLshort) added in GLM_virtrev_gl extension. + Updated detail implementation of vector types. + Make Visual C++ build with Visual C++ extensions disabled. + Rename "not" to "not_" for compatibility. + Fixed GLM_GTX_fast_square_root build. + + + Fixed GLM_GTX_component_wise extension. + + + Updated mix functions for optimization purpose. + Fixed mix functions static assert. + Updated test files. + Updated GLM_GTX_statistics_operation. + + + Fixed GLM_GTX_bit extension: isPowerOfTwoGTX works for signed int too. + Updated GLM_GTX_norm extension: Added distance2, l2norm and lxNorm functions. + Added some boost static assert. + + + Added GLM_GTX_std_based_type: Types based on C++ conventions. + Added files for extension tests. + + + Fixed GLM_GTX_fast_square_root: Updated fastDistance. + + + Fixed GLM_GTX_fast_square_root: Wrong const and updated fastLenght. + Optimized mix core function + + + Fixed GLM_GTX_epsilon: Wrong function definitions for y, z and w components. + + + Fixed GLM_GTX_flexible: Flexible with scalar only failed. + Fixed GLM_GTX_quaternion: One rotate overloaded function undefined. + + + Some fixes on GLM_GTX_intersect extension. + + + GLM 0.7.5 released. + + + Updated documentation. + + + Updated message system. + + + Added new message system. + + + Fixed GLM_GTX_normal extension. + + + Updated GLM_GTX_unsigned_int extension. (New typedef extensions) + + + Added new precompiler system. + + + Increase C++ conformance. + + + Fixed build errors. + GLM 0.7.4 released. + + + Updated external dependencies system. + Updated manual. + Fixed GLM_GTX_random extension: Fixed build with GCC. + Fixed GLM_GTX_string_cast extension: Fixed build with GCC 3.4 due to GCC anonymuous namespace bug. + + + Fixed GLM_GTX_transform2 extension: scaleBias didn't built. + + + Added GLM_VIRTREV_xstream extension: XML output for GLM types. + Added external library system + + + Updated GLM_GTX_string_cast extension: Support of non-square matrices. + GLM 0.7.3 released. + + + Fixed mat2 product. + + + Fixed GLM_GTX_transform2 dependencies. + + + Added GLM_VIRTREV_gl extension: Vector and matrix integration with OpenGL. + + + Updated GLM_GTX_number_precision extension: Added uint type. + Added GLM_GTX_string_cast extension: Create formated string from GLM type instances. + Updated GLM_GTX_transform2: added scaleBias matrix build + + + GLM 0.7.2 released. + + + Added GLM_AUTO_CAST setup option. + Updated documentation + + + Updated GLM_GTX_inverse, added affine inverse functions for fast matrix inverts. + Updated overall documentation + Added trait typedef to all GLM data types + + + Updated GLM_GTX_compatibility documentation. + Fixed GLM_GTX_random, gauss functions didn't build. + + + Added few SSE code. + Fixed matrix projections. + + + Added GLM_SWIZZLE_FUNC swizzle option. + + + Updated GLM_GTX_euler_angles documentation. + + + Updated documentation. + + + Fixed GLM_GTX_associated_min_max build on GCC. + Updated GLM_GTX_matrix_projection. + GLM 0.7.1 released. + + + GLM 0.7.0 released. + + + Updated manual. + + + Updated documentation. + Added GLM_GTX_associated_min_max extension. + + + Fixed not function with GCC. + + + Fixed interger pow function for the case of a null power. + + + Fixed mat4x2 and mat4x3 GCC build. + Updated documentation. + Reseted glmsetup.h to default values. + + + Fixed missing xvec4 constructor with bool argument definition. + Fixed namespace collision in quaternion inverse function. + Fixed swizzle operators involved in operations. + Change license from GNU LGPL to MIT. + + + Fixed missing xvec4 ++ and -- operator definition. + + + Move some implementation details into detail namespace. + Fixed cast between matrices of different sizes. - - Fixed matNxM type cast to other matNxM type. - - - Fixed GLM_GTX_matrix_projection extension. - - - GLM 0.6.4 released. - - - Fixed swizzle operators. - - - Fixed GLM_GTX_matrix_selection extension. - - - Updated GLM_GTX_color_space extension. Added luminosity function. - - - GLM 0.6.3 released. - - - Fixed 3DSMax SDK conflict with GLM. - - - Updated GLM_GTX_quaternion. Added sqrt function. - - - Updated GLM_GTX_random extension. - Updated GLM_GTX_half extension. - - - Fixed matrices operator const T*() const. - - - Fixed GLM_GTX_normalize_dot extension. - GLM 0.6.2 released. - - - GLM 0.6.1 released. - - + + Fixed matNxM type cast to other matNxM type. + + + Fixed GLM_GTX_matrix_projection extension. + + + GLM 0.6.4 released. + + + Fixed swizzle operators. + + + Fixed GLM_GTX_matrix_selection extension. + + + Updated GLM_GTX_color_space extension. Added luminosity function. + + + GLM 0.6.3 released. + + + Fixed 3DSMax SDK conflict with GLM. + + + Updated GLM_GTX_quaternion. Added sqrt function. + + + Updated GLM_GTX_random extension. + Updated GLM_GTX_half extension. + + + Fixed matrices operator const T*() const. + + + Fixed GLM_GTX_normalize_dot extension. + GLM 0.6.2 released. + + + GLM 0.6.1 released. + + Added GLM_GTX_normalize_dot extension: Faster way to normalize parameters before a dot product - - Fixed namespace error on GLM_GTX_matx extension - + + Fixed namespace error on GLM_GTX_matx extension + Added GLM_GTX_flexible_mix extension: mix function can take different types parameters @@ -888,7 +892,7 @@ Updated GLM_GTX_random extension: Gauss distribution, spherical distribution, linear distribution. - Fixed namespace issues with Visual Studio 8.0 SP1. + Fixed namespace issues with Visual Studio 8.0 SP1. Updated GLM_GTX_gpu_shader4 extension: Add bit operators. @@ -1184,7 +1188,7 @@ Added GLM_GTX_fast_square_root extension to wishlist in position 19. Added GLM_GTX_inverse_transpose extension to wishlist in position 20. - Fixed missing of vec4 * mat4 operator. + Fixed missing of vec4 * mat4 operator. Reorganization of extensions. @@ -1199,7 +1203,7 @@ Updated GLM_GTX_projection extension. - + Added GLM_GTX_transform2 extension to wishlist in position 18. @@ -1519,11 +1523,36 @@ + + + + + - + + + + GLM 0.9.B.2 (zip, 1.07 MB) + GLM 0.9.B.2 (7z, 555 KB) + + + + + A new development version of GLM 0.9 is available. + + + This version is based on GLSL 4.0 and supports the new common and integer functions. Also a long and frequently asked feature has been implemented: inplicit conversions. + However, the rules defining implicit conversions by GLSL 4.0 are quite weaked and can't really be apply in C++. + + + Reaching the beta status, this new features close the feature list of GLM 0.9. + Further development releases may happen before the final release. + + GLM 0.9.B.1 (zip, 964 KB) + GLM 0.9.B.1 (7z, 414 KB) + + Groove @@ -1531,438 +1560,437 @@ GLM 0.9.A.2 (zip, 1.3 MB) GLM 0.9.A.2 (7z, 726 KB) + + + + Groove + + First step until a major release for GLM with this first alpha of GLM 0.9. + + + This version brings a large internal redesign to improve the library reliability and optimized some parts. + It removed the deprecated features and API which implies that GLM 0.9 isn't backward compatible. + + + For most users the build issues when upgrading to GLM 0.9 should be reduced especially if they follow the deprecation policy. + + + This release is still UNSTABLE and not recommanded for commertial products. + + GLM 0.9.A.1 (zip, 950 KB) + GLM 0.9.A.1 (7z, 391 KB) Full changelog - - - Groove - - First step until a major release for GLM with this first alpha of GLM 0.9. - - - This version brings a large internal redesign to improve the library reliability and optimized some parts. - It removed the deprecated features and API which implies that GLM 0.9 isn't backward compatible. - - - For most users the build issues when upgrading to GLM 0.9 should be reduced especially if they follow the deprecation policy. - - - This release is still UNSTABLE and not recommanded for commertial products. - - GLM 0.9.A.1 (zip, 950 KB) - GLM 0.9.A.1 (7z, 391 KB) - Full changelog - - - - Groove - - This update just removes some warnings - - - By the way, if you have questions about GLM, a good place for those is the OpenGL.org Toolkits forum. - - GLM 0.8.4.4 (zip, 1.1 MB) - GLM 0.8.4.4 (7z, 479 KB) - Full changelog - - - - Groove - - This version fixed half scalars and half vectors arithmetics. - This is a really slow practice that should be avoid. - Half floating point value should be use only to store GPU data. - GPUs have native support for half values, not x86 CPUs. - - GLM 0.8.4.3 (zip, 1.1 MB) - GLM 0.8.4.3 (7z, 463 KB) - Full changelog - - - - Groove - - This version is a really minor updates, fixing single issue with half float types. - - GLM 0.8.4.2 (zip, 1.1 MB) - GLM 0.8.4.2 (7z, 443 KB) - Full changelog - - - Groove - - This version fixes few bugs and provides an major update of the manual thanks to Damian Trebilco. - - GLM 0.8.4.1 (zip, 1.1 MB) - GLM 0.8.4.1 (7z, 443 KB) - Full changelog - - - - Groove - - This new version mainly adds support for Visual Studio 2010 and GCC 4.4. It also provides various code optimization, bug fixes and an extension. - - GLM 0.8.4.0 (zip, 1.1 MB) - GLM 0.8.4.0 (7z, 439 KB) - Full changelog - - - - Groove - - Fixed extension bugs introduced by core update. - - GLM 0.8.3.5 (zip, 971 KB) - GLM 0.8.3.5 (7z, 405 KB) - Full changelog - - - - Groove - - Fixed varius bugs. Move determinant fonction to core following GLSL 1.5 specification. - - GLM 0.8.3.4 (zip, 971 KB) - GLM 0.8.3.4 (7z, 405 KB) - Full changelog - - - - Groove - - Fixed varius bugs. - - GLM 0.8.3.3 (zip, 971 KB) - GLM 0.8.3.3 (7z, 405 KB) - Full changelog - - - - Groove - - Add GLM_GTC_quaternion and GLM_GTC_type_precision extensions both subset of GLM_GTX_quaternion and GLM_GTX_number_precision - - GLM 0.8.3.2 (zip, 971 KB) - GLM 0.8.3.2 (7z, 405 KB) - Full changelog - + + Groove + + This update just removes some warnings + + + By the way, if you have questions about GLM, a good place for those is the OpenGL.org Toolkits forum. + + GLM 0.8.4.4 (zip, 1.1 MB) + GLM 0.8.4.4 (7z, 479 KB) + Full changelog + - - Groove - - The old way to use extensions have been fixed and GLM_GTX_bit extension gets updated with more functions to manipulate bit fields. - - GLM 0.8.3.1 (zip, 954 KB) - GLM 0.8.3.1 (7z, 402 KB) - Full changelog - - - - Groove - - This version brings to main changed: Stable extensions and a new extension system. - - - The first stable GLM extensions are: GLM_GTC_double_float and GLM_GTC_half_float for higher and lower vectors and matrices floating point precision. GLM_GTC_matrix_operation provides determinant and inverse matrix calculation. GLM_GTC_matrix_transform allows to build scale, rotate and translate matrices and GLM_GTC_matrix_projection provides varius functions to build projection matrices. Few stable extensions yet but the number is going to grow with the next release! - - - Both GLM 0.8.2.x extensions use method are deprecated (but still working) and replace by a new one. If you wnat to use GLM_GTC_half_float just include "glm/gtc/half_float.hpp" and it is going to be included in GLM namespace. - - - Finally, quite some file have been renamed, using "hpp" instead of ".h". Old file have been deprecated but are still available so that GLM 0.8.3.0 is fully compatible with GLM 0.8.2.x. - - GLM 0.8.3.0 (zip, 896 KB) - GLM 0.8.3.0 (7z, 359 KB) - Code samples page - Manual - Full changelog - + + Groove + + This version fixed half scalars and half vectors arithmetics. + This is a really slow practice that should be avoid. + Half floating point value should be use only to store GPU data. + GPUs have native support for half values, not x86 CPUs. + + GLM 0.8.4.3 (zip, 1.1 MB) + GLM 0.8.4.3 (7z, 463 KB) + Full changelog + - - Groove - GLM 0.8.2.3 (zip, 963 KB) - GLM 0.8.2.3 (7z, 381 KB) - Manual - Full changelog - + + Groove + + This version is a really minor updates, fixing single issue with half float types. + + GLM 0.8.4.2 (zip, 1.1 MB) + GLM 0.8.4.2 (7z, 443 KB) + Full changelog + - - Groove - - A new release is available and inogurate a patch number. The goal of this patch number is to release faster fixes from bug reports. - - GLM 0.8.2.1 (zip, 963 KB) - GLM 0.8.2.1 (7z, 381 KB) - Manual - Full changelog - - - - Groove - - This release only fixes bugs. Left sided swizzle operators, quaternion operators, vectors access operators for the main onces. - - GLM 0.8.2 (zip, 963 KB) - GLM 0.8.2 (7z, 381 KB) - Manual - Full changelog - + + Groove + + This version fixes few bugs and provides an major update of the manual thanks to Damian Trebilco. + + GLM 0.8.4.1 (zip, 1.1 MB) + GLM 0.8.4.1 (7z, 443 KB) + Full changelog + - - Groove - - Some artifacts have been added to the tracker to give a picture of what you could expect for the next releases. - - - If you need something else you can add some artifacts to the tracker. Any comment on added entries is welcome. - - - Furthermore, no more release of GLM 0.7.x will be done. Please upgrade to GLM 0.8.1. - - - Finally, a pack of programmable oriented OpenGL samples using GLM is under development and planed to be release in December. - - Tracker - + + Groove + + This new version mainly adds support for Visual Studio 2010 and GCC 4.4. It also provides various code optimization, bug fixes and an extension. + + GLM 0.8.4.0 (zip, 1.1 MB) + GLM 0.8.4.0 (7z, 439 KB) + Full changelog + - - Groove - - GLM 0.8.1 is released. This new version mainly fixes 64 bit integers with GCC and various bugs. - - GLM 0.8.1 (zip, 938 KB) - GLM 0.8.1 (7z, 372 KB) - GLM 0.8.1 Manual - Full changelog - + + Groove + + Fixed extension bugs introduced by core update. + + GLM 0.8.3.5 (zip, 971 KB) + GLM 0.8.3.5 (7z, 405 KB) + Full changelog + - - Groove - - GLM 0.8.0 is released. This new version is now based on GLSL 1.30 specification which provided new functions and precision qualifiers. - - - Beyond this, lot of changes have been done to make GLM easier to use, easier to develop, more reliable, more conform to C++ ISO98 standard and GLSL specifications. - - - It involves that GLM 0.8.x is not backward compatible with GLM 0.7.x... However, an application port from GLM 0.7.x to GLM 0.8.x isn't a huge work and actually for some, it won’t be work at all. - - - On GLM core side, based on GLSL features, vector types can't be automatically cast to pointer anymore for code safety purposes. Vector constructors require a single scalar parameter of the exact number of components. - - - On GLM extension side, the mechanism to use them has changed. The old [__]***GTX way doesn't exist anymore. Have a look on the manual for more information. - - - Have a look on the manual and the changelog for more information. Don't forget to send your feedback and enjoy! - - GLM 0.8.0 (zip, 936 KB) - GLM 0.8.0 (7z, 370 KB) - GLM 0.8.0 Manual - Full changelog - Post a comment - + + Groove + + Fixed varius bugs. Move determinant fonction to core following GLSL 1.5 specification. + + GLM 0.8.3.4 (zip, 971 KB) + GLM 0.8.3.4 (7z, 405 KB) + Full changelog + - - Groove - - Ambient aperture lighting Humus demo have been updated to use GLM as math library. - - Updated demo + all sources (zip, 2.38 MB) - Original demo (zip, 1.40 MB) - Post a comment - - - - Groove - - As you can see the website get a little update to prepare GLM 0.8.0 final release. - - - GLM 0.8.0 final should be release during the week. - - - - - Groove - - This release fixes some bugs and add few features though extensions. The development is now based on CMake to make easier cross platform tests and project management. - - GLM 0.8.0 Beta 3 (zip, 819 KB) - GLM 0.8.0 Beta 3 (7z, 345 KB) - Full changelog - Post a comment - - - - Groove - - This release mainly improves half float vectors support. By default the low precission vectors are based on float numbers not on half numbers - - - It also provides new setup options. GLM_USE_ONLY_XYZW to disable multiple names to access to a single vector component. GLM_USE_ANONYMOUS_UNION to allow multiple component names on half vectors with Visual C++. - - - Various bugs and updates of extensions have been done too. Final release is coming... - - GLM 0.8.0 Beta 2 (zip, 798 KB) - GLM 0.8.0 Beta 2 (7z, 327 KB) - Full changelog - Post a comment - + + Groove + + Fixed varius bugs. + + GLM 0.8.3.3 (zip, 971 KB) + GLM 0.8.3.3 (7z, 405 KB) + Full changelog + - - Groove - - GLM have been updated to support GLSL 1.30. API documentation had significant improvements to make easier finding of GLSL functions and types. - - - GLM 0.8.x is NOT backward compatible with GLM 0.7.x. Upgrade to GLM 0.8.x could involve build errors for the following cases: A lot of improvements have been made to increase the conformance with GLSL specification. Lot of GLSL 1.30 features were already exposed in extensions that have been deleted. The extension syntaxe based on ARB convension is no long used. - - - Due to the number of changes GLM 0.8.0 is release as beta first. The final release is schedule for october. - - GLM 0.8.0 Beta 1 (zip, 786 KB) - GLM 0.8.0 Beta 1 (7z, 321 KB) - Full changelog - Post a comment - + + Groove + + Add GLM_GTC_quaternion and GLM_GTC_type_precision extensions both subset of GLM_GTX_quaternion and GLM_GTX_number_precision + + GLM 0.8.3.2 (zip, 971 KB) + GLM 0.8.3.2 (7z, 405 KB) + Full changelog + - - Groove - - GLM 0.7.6 provides a better C++ conformance so that you can build GLM with –pedantic G++ parameter or without Visual Studio extensions. To make GLM more reliable, BOOST_STATIC_ASSERT are used according developer wishes. - - GLM 0.7.6 (zip, 907 KB) - GLM 0.7.6 (7z, 387 KB) - Full changelog - Manual - + + Groove + + The old way to use extensions have been fixed and GLM_GTX_bit extension gets updated with more functions to manipulate bit fields. + + GLM 0.8.3.1 (zip, 954 KB) + GLM 0.8.3.1 (7z, 402 KB) + Full changelog + - - Groove - - GLM 0.7.5 is available and introduces a new build messsage system to get information of GLM build configuration with Visual Studio. This mechanism is documented in section 6 of GLM manual. Also, GLM can be built with GCC pedantic options. - - GLM 0.7.5 (zip, 852 KB) - GLM 0.7.5 (7z, 366 KB) - Full changelog - Manual - + + Groove + + This version brings to main changed: Stable extensions and a new extension system. + + + The first stable GLM extensions are: GLM_GTC_double_float and GLM_GTC_half_float for higher and lower vectors and matrices floating point precision. GLM_GTC_matrix_operation provides determinant and inverse matrix calculation. GLM_GTC_matrix_transform allows to build scale, rotate and translate matrices and GLM_GTC_matrix_projection provides varius functions to build projection matrices. Few stable extensions yet but the number is going to grow with the next release! + + + Both GLM 0.8.2.x extensions use method are deprecated (but still working) and replace by a new one. If you wnat to use GLM_GTC_half_float just include "glm/gtc/half_float.hpp" and it is going to be included in GLM namespace. + + + Finally, quite some file have been renamed, using "hpp" instead of ".h". Old file have been deprecated but are still available so that GLM 0.8.3.0 is fully compatible with GLM 0.8.2.x. + + GLM 0.8.3.0 (zip, 896 KB) + GLM 0.8.3.0 (7z, 359 KB) + Code samples page + Manual + Full changelog + - - Groove - - GLM 0.7.4 introduces a new system to manage external dependencies. - - - It allows developing extension using external dependencies like GLEW, Boost, etc. without making required those dependencies for GLM programmer that doesn't need those external dependent extensions. - - - The mechanism is described into the updated manual. - - GLM 0.7.4 (zip, 859 KB) - GLM 0.7.4 (7z, 372 KB) - Full changelog - Manual - + + Groove + GLM 0.8.2.3 (zip, 963 KB) + GLM 0.8.2.3 (7z, 381 KB) + Manual + Full changelog + + + + Groove + + A new release is available and inogurate a patch number. The goal of this patch number is to release faster fixes from bug reports. + + GLM 0.8.2.1 (zip, 963 KB) + GLM 0.8.2.1 (7z, 381 KB) + Manual + Full changelog + + + + Groove + + This release only fixes bugs. Left sided swizzle operators, quaternion operators, vectors access operators for the main onces. + + GLM 0.8.2 (zip, 963 KB) + GLM 0.8.2 (7z, 381 KB) + Manual + Full changelog + + + + Groove + + Some artifacts have been added to the tracker to give a picture of what you could expect for the next releases. + + + If you need something else you can add some artifacts to the tracker. Any comment on added entries is welcome. + + + Furthermore, no more release of GLM 0.7.x will be done. Please upgrade to GLM 0.8.1. + + + Finally, a pack of programmable oriented OpenGL samples using GLM is under development and planed to be release in December. + + Tracker + + + + Groove + + GLM 0.8.1 is released. This new version mainly fixes 64 bit integers with GCC and various bugs. + + GLM 0.8.1 (zip, 938 KB) + GLM 0.8.1 (7z, 372 KB) + GLM 0.8.1 Manual + Full changelog + + + + Groove + + GLM 0.8.0 is released. This new version is now based on GLSL 1.30 specification which provided new functions and precision qualifiers. + + + Beyond this, lot of changes have been done to make GLM easier to use, easier to develop, more reliable, more conform to C++ ISO98 standard and GLSL specifications. + + + It involves that GLM 0.8.x is not backward compatible with GLM 0.7.x... However, an application port from GLM 0.7.x to GLM 0.8.x isn't a huge work and actually for some, it won’t be work at all. + + + On GLM core side, based on GLSL features, vector types can't be automatically cast to pointer anymore for code safety purposes. Vector constructors require a single scalar parameter of the exact number of components. + + + On GLM extension side, the mechanism to use them has changed. The old [__]***GTX way doesn't exist anymore. Have a look on the manual for more information. + + + Have a look on the manual and the changelog for more information. Don't forget to send your feedback and enjoy! + + GLM 0.8.0 (zip, 936 KB) + GLM 0.8.0 (7z, 370 KB) + GLM 0.8.0 Manual + Full changelog + Post a comment + + + + Groove + + Ambient aperture lighting Humus demo have been updated to use GLM as math library. + + Updated demo + all sources (zip, 2.38 MB) + Original demo (zip, 1.40 MB) + Post a comment + + + + Groove + + As you can see the website get a little update to prepare GLM 0.8.0 final release. + + + GLM 0.8.0 final should be release during the week. + + + + + Groove + + This release fixes some bugs and add few features though extensions. The development is now based on CMake to make easier cross platform tests and project management. + + GLM 0.8.0 Beta 3 (zip, 819 KB) + GLM 0.8.0 Beta 3 (7z, 345 KB) + Full changelog + Post a comment + + + + Groove + + This release mainly improves half float vectors support. By default the low precission vectors are based on float numbers not on half numbers + + + It also provides new setup options. GLM_USE_ONLY_XYZW to disable multiple names to access to a single vector component. GLM_USE_ANONYMOUS_UNION to allow multiple component names on half vectors with Visual C++. + + + Various bugs and updates of extensions have been done too. Final release is coming... + + GLM 0.8.0 Beta 2 (zip, 798 KB) + GLM 0.8.0 Beta 2 (7z, 327 KB) + Full changelog + Post a comment + + + + Groove + + GLM have been updated to support GLSL 1.30. API documentation had significant improvements to make easier finding of GLSL functions and types. + + + GLM 0.8.x is NOT backward compatible with GLM 0.7.x. Upgrade to GLM 0.8.x could involve build errors for the following cases: A lot of improvements have been made to increase the conformance with GLSL specification. Lot of GLSL 1.30 features were already exposed in extensions that have been deleted. The extension syntaxe based on ARB convension is no long used. + + + Due to the number of changes GLM 0.8.0 is release as beta first. The final release is schedule for october. + + GLM 0.8.0 Beta 1 (zip, 786 KB) + GLM 0.8.0 Beta 1 (7z, 321 KB) + Full changelog + Post a comment + + + + Groove + + GLM 0.7.6 provides a better C++ conformance so that you can build GLM with –pedantic G++ parameter or without Visual Studio extensions. To make GLM more reliable, BOOST_STATIC_ASSERT are used according developer wishes. + + GLM 0.7.6 (zip, 907 KB) + GLM 0.7.6 (7z, 387 KB) + Full changelog + Manual + + + + Groove + + GLM 0.7.5 is available and introduces a new build messsage system to get information of GLM build configuration with Visual Studio. This mechanism is documented in section 6 of GLM manual. Also, GLM can be built with GCC pedantic options. + + GLM 0.7.5 (zip, 852 KB) + GLM 0.7.5 (7z, 366 KB) + Full changelog + Manual + + + + Groove + + GLM 0.7.4 introduces a new system to manage external dependencies. + + + It allows developing extension using external dependencies like GLEW, Boost, etc. without making required those dependencies for GLM programmer that doesn't need those external dependent extensions. + + + The mechanism is described into the updated manual. + + GLM 0.7.4 (zip, 859 KB) + GLM 0.7.4 (7z, 372 KB) + Full changelog + Manual + + + + Groove + + GLM 0.7.3 is released. This version fixes few bugs and add few extensions + + GLM 0.7.3 (zip, 1.8 MB) + GLM 0.7.3 (7z, 635 KB) + Full changelog + + + + Groove + + GLM 0.7.2 is released. The documentation have been completed again and several issues handle with precompiler options. + + + #define GLM_SWIZZLE GLM_SWIZZLE_FUNC allows to use swizzle operators with internal functions. For example, glm::vec3(1, 2, 3).zyx is replaced by glm::vec3(1, 2, 3)._zyx() with this option. + + + #define GLM_FORCE_NO_HALF allows to include all extensions (#include "glm/glmext.h") without any support of half-precision floating-point numbers. + + + #define GLM_AUTO_CAST GLM_DISABLE allows to disable automatic cast (eg: glLoadMatrixf(glm::mat4(1.0))) which could involve unfortunate issues in some cases. + + + More information on these topic are available in GLM manual section 5 "Known issues". + + GLM 0.7.2 (zip, 1.8 MB) + GLM 0.7.2 (7z, 635 KB) + Full changelog + + + + Groove + + GLM 0.7.1 is available under MIT license. It fixes bugs with GCC. + + GLM 0.7.1 (zip, 1.8 MB) + GLM 0.7.1 (7z, 635 KB) + Full changelog + + + + Groove + + GLM 0.7.0 is available under MIT license. LGPL lisence have been discard due to an issue of use for console development. This release contains a lot better documentation based on Doxygen. Lot of bugs have been fixed and the documentation completed. Thanks to all people that has contributed thought bug reports and ideas to make this version a lot better! + + GLM 0.7.0 (zip, 1.8 MB) + GLM 0.7.0 (7z, 635 KB) + Full changelog + - - Groove - - GLM 0.7.3 is released. This version fixes few bugs and add few extensions - - GLM 0.7.3 (zip, 1.8 MB) - GLM 0.7.3 (7z, 635 KB) - Full changelog - - - - Groove - - GLM 0.7.2 is released. The documentation have been completed again and several issues handle with precompiler options. - - - #define GLM_SWIZZLE GLM_SWIZZLE_FUNC allows to use swizzle operators with internal functions. For example, glm::vec3(1, 2, 3).zyx is replaced by glm::vec3(1, 2, 3)._zyx() with this option. - - - #define GLM_FORCE_NO_HALF allows to include all extensions (#include "glm/glmext.h") without any support of half-precision floating-point numbers. - - - #define GLM_AUTO_CAST GLM_DISABLE allows to disable automatic cast (eg: glLoadMatrixf(glm::mat4(1.0))) which could involve unfortunate issues in some cases. - - - More information on these topic are available in GLM manual section 5 "Known issues". - - GLM 0.7.2 (zip, 1.8 MB) - GLM 0.7.2 (7z, 635 KB) - Full changelog - - - - Groove - - GLM 0.7.1 is available under MIT license. It fixes bugs with GCC. - - GLM 0.7.1 (zip, 1.8 MB) - GLM 0.7.1 (7z, 635 KB) - Full changelog - - - - Groove - - GLM 0.7.0 is available under MIT license. LGPL lisence have been discard due to an issue of use for console development. This release contains a lot better documentation based on Doxygen. Lot of bugs have been fixed and the documentation completed. Thanks to all people that has contributed thought bug reports and ideas to make this version a lot better! - - GLM 0.7.0 (zip, 1.8 MB) - GLM 0.7.0 (7z, 635 KB) - Full changelog - - Groove - GLM 0.6.4 is available and fixes some swizzle operator issues. + GLM 0.6.4 is available and fixes some swizzle operator issues. GLM 0.6.4 (zip, 1.7 MB) GLM 0.6.4 (7z, 612 KB) Full changelog - + - Groove - - GLM 0.6.3 fixes accesses of matrices and a 3DSMax SDK conflict. - - GLM 0.6.3 (zip, 1.8 MB) - GLM 0.6.3 (7z, 633 KB) - Full changelog - - - - Groove - - GLM 0.6.2 fixes an error on an extension. - - GLM 0.6.2 (zip, 1.8 MB) - GLM 0.6.2 (7z, 632 KB) - Full changelog - - - - Groove - - GLM 0.6.1 is a minor update that fix an issue on extension namespace and add two more extensions. - - GLM 0.6.1 (zip, 1.8 MB) - GLM 0.6.1 (7z, 632 KB) - Full changelog - - - + Groove + + GLM 0.6.3 fixes accesses of matrices and a 3DSMax SDK conflict. + + GLM 0.6.3 (zip, 1.8 MB) + GLM 0.6.3 (7z, 633 KB) + Full changelog + + + + Groove + + GLM 0.6.2 fixes an error on an extension. + + GLM 0.6.2 (zip, 1.8 MB) + GLM 0.6.2 (7z, 632 KB) + Full changelog + + + + Groove + + GLM 0.6.1 is a minor update that fix an issue on extension namespace and add two more extensions. + + GLM 0.6.1 (zip, 1.8 MB) + GLM 0.6.1 (7z, 632 KB) + Full changelog + + + Groove GLM 0.6.0 is available. For this release, work focus on extensions. A new mecanisum allows to integrate GLM extensions as it is actually done for GLSL extension by vendors. Lot of new extensions have been added. @@ -1973,56 +2001,56 @@ Raytracer v1.0 (zip) Full changelog - + Groove This release fixes some issues with swizzle operators. - GLM 0.5.1 (zip, 2.3 MB) - GLM 0.5.1 (7z, 789 KB) + GLM 0.5.1 (zip, 2.3 MB) + GLM 0.5.1 (7z, 789 KB) - + Groove A new sample is available. It's an update of Philip Rideout's Catmull Clark subdivision program that uses GLM. Released with pleasant permission of Philip Rideout. - CatmullClark sample (zip, 605 KB) + CatmullClark sample (zip, 605 KB) - + Groove - This release include GLSL 1.2 new feature in the core implementation. Also, it includes swizzle read and write operators and a custom options system to setup GLM. + This release include GLSL 1.2 new feature in the core implementation. Also, it includes swizzle read and write operators and a custom options system to setup GLM. - It includes some new extensions to extend GLSL features but they remain experimental. The next release should provide the first stable extensions. + It includes some new extensions to extend GLSL features but they remain experimental. The next release should provide the first stable extensions. - The GLM 0.5.0 packages contain some basic samples and some documentation. The ray tracer sample has been updated to GLM 0.5.0. Except for specific cases, especially with extensions, GLM 0.5 is backward compatible. + The GLM 0.5.0 packages contain some basic samples and some documentation. The ray tracer sample has been updated to GLM 0.5.0. Except for specific cases, especially with extensions, GLM 0.5 is backward compatible. Now, GLM development is taking advantages of SourceForge.net services: a bug tracker system and the development source code is publicly available on SF.net SVN server. - GLM 0.5.0 (zip, 2.4 MB) - GLM 0.5.0 (7z, 843 KB) - Raytracer b3.0 (exe, 751 KB) - Raytracer b3.0 (zip, 1.1 MB) + GLM 0.5.0 (zip, 2.4 MB) + GLM 0.5.0 (7z, 843 KB) + Raytracer b3.0 (exe, 751 KB) + Raytracer b3.0 (zip, 1.1 MB) - + Groove - A GLM update is available. It simply includes some examples for a sweet start with GLM. + A GLM update is available. It simply includes some examples for a sweet start with GLM. - The examples show how to use GLM with OpenGL intermediate mode and OpenGL vertex arrays. Also, they show how to use GLM extensions to replace GLU and OpenGL function witch could slightly increase performances by decreasing the number of OpenGL states changes. + The examples show how to use GLM with OpenGL intermediate mode and OpenGL vertex arrays. Also, they show how to use GLM extensions to replace GLU and OpenGL function witch could slightly increase performances by decreasing the number of OpenGL states changes. - GLM 0.4.1 (zip, 1.6 MB) - GLM 0.4.1 (7z, 521 KB) + GLM 0.4.1 (zip, 1.6 MB) + GLM 0.4.1 (7z, 521 KB) - + Groove @@ -2031,9 +2059,9 @@ The number of features of GLM, including extensions, start to really increase the compilation time. That's why it's recommended to use precompiled headers. - GLM 0.4.0 + GLM 0.4.0 - + Groove @@ -2046,15 +2074,15 @@ Version 0.6 will add swizzle operators in reading and writing. (eg: vec3 v1(1.0, 2.0, 3.0); vec3 v2 = v1.xxx; v1.zyx = v;). - + Groove This release corrects two main bugs. First, a bug of the imat4 and mat4 division operators and other correct the vectors components access from texture coordinate way. - GLM 0.3.2 + GLM 0.3.2 - + Groove @@ -2063,9 +2091,9 @@ Further release will prodive GLSL 1.2 compliances. - GLM 0.3.1 + GLM 0.3.1 - + Groove @@ -2074,11 +2102,11 @@ This new release have been tested under Visual C++ 7.1, Visual C++ 8.0, GCC 3.2.3 et GCC 3.4.2. - GLM 0.3 - Raytrace - Online documentation + GLM 0.3 + Raytrace + Online documentation - + Groove @@ -2091,14 +2119,14 @@ To demo the features of this new version, a sample program is included. It is a simple Ray Tracer supporting reflected and refracted rays, three lights types (point, directionnal and spot), two objects types (sphere, plan), using all of the GLM possibilities. - + Groove The english section of this site is now available. - + Groove @@ -2110,31 +2138,31 @@ This project is multi platform and was successfully tested under Visual C++ 7.1, MinGW 3.4 and GCC 3.4. - GLM 0.1 User Release - GLM 0.1 Contributor Release - GLSL 1.10.59 specifications + GLM 0.1 User Release + GLM 0.1 Contributor Release + GLSL 1.10.59 specifications - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - + OpenGL's Official site. You would find OpenGL specifications, news and tons of related informations. @@ -2228,75 +2256,76 @@ - - - OpenGL Mathematics (GLM) is a C++ mathematics library for 3D software based on the OpenGL Shading Language (GLSL) specification. - - - 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. - - - 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. - - - GLM is release under MIT license and available for all version of GCC from version 3.4 and Visual Studio from version 8.0 as a platform independent library. - - - You can checkout SVN development sources from https://glf.svn.sourceforge.net/svnroot/glf/Trunk/glm/. - - + + + OpenGL Mathematics (GLM) is a C++ mathematics library for 3D software based on the OpenGL Shading Language (GLSL) specification. + + + 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. + + + 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. + + + GLM is release under MIT license and available for all version of GCC from version 3.4 and Visual Studio from version 8.0 as a platform independent library. + + + You can checkout SVN development sources from https://glf.svn.sourceforge.net/svnroot/glf/Trunk/glm/. + + - - GLSL + Optional features = OpenGL Mathematics (GLM). - A C++ mathematics library for 3D graphics. - + + GLSL + Optional features = OpenGL Mathematics (GLM). + A C++ mathematics library for 3D graphics. + - - - - - 2560x1600 - 1920x1200 - 1600x1000 - 1280x0800 - 1024x0640 - - - - - Font (.otf) - - - - - - - - - - - + + + + + 2560x1600 + 1920x1200 + 1600x1000 + 1280x0800 + 1024x0640 + + + + + Font (.otf) + + - - - - - - - - + + + + + + + - - - - - + + + + + + + + - - - - - - + + + + + + + + + + + + + + diff --git a/doc/src/issue.xsl b/doc/src/issue.xsl deleted file mode 100644 index 23b8e1ed..00000000 --- a/doc/src/issue.xsl +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - OpenGL Mathematics : Issues - - - - - - -
- OpenGL Mathematics -
- - - - - -
- -
- - - -
- - -
-
Problématiques
-
- -
-
- - -
- )
-
-
- -
-
- STATUE : , -
-
-
-
- - -
- : -
-
- -
diff --git a/doc/src/util.xsl b/doc/src/util.xsl index cb8978f2..55e49061 100644 --- a/doc/src/util.xsl +++ b/doc/src/util.xsl @@ -93,9 +93,6 @@
-

diff --git a/glm/glm.hpp b/glm/glm.hpp index 6c91fa14..9ff58467 100644 --- a/glm/glm.hpp +++ b/glm/glm.hpp @@ -17,7 +17,9 @@ * * This library can be used with OpenGL but also for software rendering (Raytracing / Rasterisation), image processing and as much contexts as a simple math library could be used for. * - * GLM is written as a platform independent library and supports the following compilers: - GNU GCC 3.4 and higher - Microsoft Visual Studio 8.0 and higher + * GLM is written as a platform independent library and supports the following compilers: + * - GNU GCC 3.4 and higher + * - Microsoft Visual Studio 8.0 and higher * * The source code is under the MIT licence. *