diff options
author | rtk0c <[email protected]> | 2025-08-16 11:23:49 -0700 |
---|---|---|
committer | rtk0c <[email protected]> | 2025-08-16 11:23:49 -0700 |
commit | 047f294de1b4d385b811ac9f5afc393d81cc4ae9 (patch) | |
tree | f96100a813a4ffb28dcd074455d3a2f8ee426430 /3rdparty/glm/source/readme.md | |
parent | 488fb8b4b9da7f99a5cc37e39fff9f1cb700f2a8 (diff) |
Copy changes from the no-history fork, generated back in 2023
Original commit message:
> commit f138311d2d2e0cc9ba0496d523bb46f2c1c9fb73
> Author: rtk0c <[email protected]>
> Date: Wed Sep 20 23:58:58 2023 -0700
>
> Copy from the PlasticSCM repo, replace vendored glm wtih conan
In reality, this also introduced a few uncommitted changes in the
original PlasticSCM repo. See the modified and new files in this patch.
Diffstat (limited to '3rdparty/glm/source/readme.md')
-rw-r--r-- | 3rdparty/glm/source/readme.md | 1231 |
1 files changed, 0 insertions, 1231 deletions
diff --git a/3rdparty/glm/source/readme.md b/3rdparty/glm/source/readme.md deleted file mode 100644 index 55b9678..0000000 --- a/3rdparty/glm/source/readme.md +++ /dev/null @@ -1,1231 +0,0 @@ - - -[OpenGL Mathematics](http://glm.g-truc.net/) (*GLM*) is a header only C++ mathematics library for graphics software based on the [OpenGL Shading Language (GLSL) specifications](https://www.opengl.org/registry/doc/GLSLangSpec.4.50.diff.pdf). - -*GLM* provides classes and functions designed and implemented with the same naming conventions and functionality than *GLSL* so that anyone who knows *GLSL*, can use *GLM* as well in C++. - -This project isn't limited to *GLSL* features. An extension system, based on the *GLSL* extension conventions, provides extended capabilities: matrix transformations, quaternions, data packing, random numbers, noise, etc... - -This library works perfectly with *[OpenGL](https://www.opengl.org)* but it also ensures interoperability with other third party libraries and SDK. It is a good candidate for software rendering (raytracing / rasterisation), image processing, physics simulations and any development 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 it officially supports the following compilers: -- [*GCC*](http://gcc.gnu.org/) 4.7 and higher -- [*Intel C++ Compose*](https://software.intel.com/en-us/intel-compilers) XE 2013 and higher -- [*Clang*](http://llvm.org/) 3.4 and higher -- [*Apple Clang 6.0*](https://developer.apple.com/library/mac/documentation/CompilerTools/Conceptual/LLVMCompilerOverview/index.html) and higher -- [*Visual C++*](http://www.visualstudio.com/) 2013 and higher -- [*CUDA*](https://developer.nvidia.com/about-cuda) 9.0 and higher (experimental) -- [*SYCL*](https://www.khronos.org/sycl/) (experimental: only [ComputeCpp](https://codeplay.com/products/computesuite/computecpp) implementation has been tested). -- Any C++11 compiler - -For more information about *GLM*, please have a look at the [manual](manual.md) and the [API reference documentation](http://glm.g-truc.net/0.9.8/api/index.html). -The source code and the documentation are licensed under either the [Happy Bunny License (Modified MIT) or the MIT License](manual.md#section0). - -Thanks for contributing to the project by [submitting pull requests](https://github.com/g-truc/glm/pulls). - -```cpp -#include <glm/vec3.hpp> // glm::vec3 -#include <glm/vec4.hpp> // glm::vec4 -#include <glm/mat4x4.hpp> // glm::mat4 -#include <glm/ext/matrix_transform.hpp> // glm::translate, glm::rotate, glm::scale -#include <glm/ext/matrix_clip_space.hpp> // glm::perspective -#include <glm/ext/scalar_constants.hpp> // glm::pi - -glm::mat4 camera(float Translate, glm::vec2 const& Rotate) -{ - glm::mat4 Projection = glm::perspective(glm::pi<float>() * 0.25f, 4.0f / 3.0f, 0.1f, 100.f); - glm::mat4 View = glm::translate(glm::mat4(1.0f), glm::vec3(0.0f, 0.0f, -Translate)); - View = glm::rotate(View, Rotate.y, glm::vec3(-1.0f, 0.0f, 0.0f)); - View = glm::rotate(View, Rotate.x, glm::vec3(0.0f, 1.0f, 0.0f)); - glm::mat4 Model = glm::scale(glm::mat4(1.0f), glm::vec3(0.5f)); - return Projection * View * Model; -} -``` - -## [Lastest release](https://github.com/g-truc/glm/releases/latest) - -## Project Health - -| Service | System | Compiler | Status | -| ------- | ------ | -------- | ------ | -| [Travis CI](https://travis-ci.org/g-truc/glm)| MacOSX, Linux 64 bits | Clang 3.6, Clang 5.0, GCC 4.9, GCC 7.3 | [](https://travis-ci.org/g-truc/glm) -| [AppVeyor](https://ci.appveyor.com/project/Groovounet/glm)| Windows 32 and 64 | Visual Studio 2013, Visual Studio 2015, Visual Studio 2017 | [](https://ci.appveyor.com/project/Groovounet/glm) - -## Release notes - -### [GLM 0.9.9.9](https://github.com/g-truc/glm/releases/tag/0.9.9.9) - 2020-XX-XX -#### Features: -- Added *GLM_EXT_scalar_reciprocal* with tests -- Added *GLM_EXT_vector_reciprocal* with tests -- Added `glm::iround` and `glm::uround` to *GLM_EXT_scalar_common* and *GLM_EXT_vector_common* -- Added *GLM_EXT_matrix_integer* with tests - -#### Improvements: -- Added `constexpr` qualifier for `cross` product #1040 -- Added `constexpr` qualifier for `dot` product #1040 - -#### Fixes: -- Fixed incorrect assertion for `glm::min` and `glm::max` #1009 -- Fixed quaternion orientation in `glm::decompose` #1012 -- Fixed singularity in quaternion to euler angle roll conversion #1019 -- Fixed `quat` `glm::pow` handling of small magnitude quaternions #1022 -- Fixed `glm::fastNormalize` build error #1033 -- Fixed `glm::isMultiple` build error #1034 -- Fixed `glm::adjugate` calculation #1035 -- Fixed `glm::angle` discards the sign of result for angles in range (2*pi-1, 2*pi) #1038 -- Removed ban on using `glm::string_cast` with *CUDA* host code #1041 - -### [GLM 0.9.9.8](https://github.com/g-truc/glm/releases/tag/0.9.9.8) - 2020-04-13 -#### Features: -- Added *GLM_EXT_vector_intX* and *GLM_EXT_vector_uintX* extensions -- Added *GLM_EXT_matrix_intX* and *GLM_EXT_matrix_uintX* extensions - -#### Improvements: -- Added `glm::clamp`, `glm::repeat`, `glm::mirrorClamp` and `glm::mirrorRepeat` function to `GLM_EXT_scalar_commond` and `GLM_EXT_vector_commond` extensions with tests - -#### Fixes: -- Fixed unnecessary warnings from `matrix_projection.inl` #995 -- Fixed quaternion `glm::slerp` overload which interpolates with extra spins #996 -- Fixed for `glm::length` using arch64 #992 -- Fixed singularity check for `glm::quatLookAt` #770 - -### [GLM 0.9.9.7](https://github.com/g-truc/glm/releases/tag/0.9.9.7) - 2020-01-05 -#### Improvements: -- Improved *Neon* support with more functions optimized #950 -- Added *CMake* *GLM* interface #963 -- Added `glm::fma` implementation based on `std::fma` #969 -- Added missing quat constexpr #955 -- Added `GLM_FORCE_QUAT_DATA_WXYZ` to store quat data as w,x,y,z instead of x,y,z,w #983 - -#### Fixes: -- Fixed equal *ULP* variation when using negative sign #965 -- Fixed for intersection ray/plane and added related tests #953 -- Fixed ARM 64bit detection #949 -- Fixed *GLM_EXT_matrix_clip_space* warnings #980 -- Fixed Wimplicit-int-float-conversion warnings with clang 10+ #986 -- Fixed *GLM_EXT_matrix_clip_space* `perspectiveFov` - -### [GLM 0.9.9.6](https://github.com/g-truc/glm/releases/tag/0.9.9.6) - 2019-09-08 -#### Features: -- Added *Neon* support #945 -- Added *SYCL* support #914 -- Added *GLM_EXT_scalar_integer* extension with power of two and multiple scalar functions -- Added *GLM_EXT_vector_integer* extension with power of two and multiple vector functions - -#### Improvements: -- Added *Visual C++ 2019* detection -- Added *Visual C++ 2017* 15.8 and 15.9 detection -- Added missing genType check for `glm::bitCount` and `glm::bitfieldReverse` #893 - -#### Fixes: -- Fixed for g++6 where -std=c++1z sets __cplusplus to 201500 instead of 201402 #921 -- Fixed hash hashes qua instead of tquat #919 -- Fixed `.natvis` as structs renamed #915 -- Fixed `glm::ldexp` and `glm::frexp` declaration #895 -- Fixed missing const to quaternion conversion operators #890 -- Fixed *GLM_EXT_scalar_ulp* and *GLM_EXT_vector_ulp* API coding style -- Fixed quaternion componant order: `w, {x, y, z}` #916 -- Fixed `GLM_HAS_CXX11_STL` broken on Clang with Linux #926 -- Fixed *Clang* or *GCC* build due to wrong `GLM_HAS_IF_CONSTEXPR` definition #907 -- Fixed *CUDA* 9 build #910 - -#### Deprecation: - - Removed CMake install and uninstall scripts - -### [GLM 0.9.9.5](https://github.com/g-truc/glm/releases/tag/0.9.9.5) - 2019-04-01 -#### Fixes: -- Fixed build errors when defining `GLM_ENABLE_EXPERIMENTAL` #884 #883 -- Fixed `if constexpr` warning #887 -- Fixed missing declarations for `glm::frexp` and `glm::ldexp` #886 - -### [GLM 0.9.9.4](https://github.com/g-truc/glm/releases/tag/0.9.9.4) - 2019-03-19 -#### Features: -- Added `glm::mix` implementation for matrices in *GLM_EXT_matrix_common/ #842 -- Added *CMake* `BUILD_SHARED_LIBS` and `BUILD_STATIC_LIBS` build options #871 - -#### Improvements: -- Added GLM_FORCE_INTRINSICS to enable SIMD instruction code path. By default, it's disabled allowing constexpr support by default. #865 -- Optimized inverseTransform #867 - -#### Fixes: -- Fixed in `glm::mat4x3` conversion #829 -- Fixed `constexpr` issue on GCC #832 #865 -- Fixed `glm::mix` implementation to improve GLSL conformance #866 -- Fixed `glm::int8` being defined as unsigned char with some compiler #839 -- Fixed `glm::vec1` include #856 -- Ignore `.vscode` #848 - -### [GLM 0.9.9.3](https://github.com/g-truc/glm/releases/tag/0.9.9.3) - 2018-10-31 -#### Features: -- Added `glm::equal` and `glm::notEqual` overload with max ULPs parameters for scalar numbers #121 -- Added `GLM_FORCE_SILENT_WARNINGS` to silent *GLM* warnings when using language extensions but using W4 or Wpedantic warnings #814 #775 -- Added adjugate functions to `GLM_GTX_matrix_operation` #151 -- Added `GLM_FORCE_ALIGNED_GENTYPES` to enable aligned types and SIMD instruction are not enabled. This disable `constexpr` #816 - -#### Improvements: -- Added constant time ULP distance between float #121 -- Added `GLM_FORCE_SILENT_WARNINGS` to suppress *GLM* warnings #822 - -#### Fixes: -- Fixed `glm::simplex` noise build with double #734 -- Fixed `glm::bitfieldInsert` according to GLSL spec #818 -- Fixed `glm::refract` for negative 'k' #808 - -### [GLM 0.9.9.2](https://github.com/g-truc/glm/releases/tag/0.9.9.2) - 2018-09-14 -#### Fixes: -- Fixed `GLM_FORCE_CXX**` section in the manual -- Fixed default initialization with vector and quaternion types using `GLM_FORCE_CTOR_INIT` #812 - -### [GLM 0.9.9.1](https://github.com/g-truc/glm/releases/tag/0.9.9.1) - 2018-09-03 -#### Features: -- Added `bitfieldDeinterleave` to *GLM_GTC_bitfield* -- Added missing `glm::equal` and `glm::notEqual` with epsilon for quaternion types to *GLM_GTC_quaternion* -- Added *GLM_EXT_matrix_relational*: `glm::equal` and `glm::notEqual` with epsilon for matrix types -- Added missing aligned matrix types to *GLM_GTC_type_aligned* -- Added C++17 detection -- Added *Visual C++* language standard version detection -- Added PDF manual build from markdown - -#### Improvements: -- Added a section to the manual for contributing to *GLM* -- Refactor manual, lists all configuration defines -- Added missing `glm::vec1` based constructors -- Redesigned constexpr support which excludes both SIMD and `constexpr` #783 -- Added detection of *Visual C++ 2017* toolsets -- Added identity functions #765 -- Splitted headers into EXT extensions to improve compilation time #670 -- Added separated performance tests -- Clarified refract valid range of the indices of refraction, between -1 and 1 inclusively #806 - -#### Fixes: -- Fixed SIMD detection on *Clang* and *GCC* -- Fixed build problems due to `std::printf` and `std::clock_t` #778 -- Fixed int mod -- Anonymous unions require C++ language extensions -- Fixed `glm::ortho` #790 -- Fixed *Visual C++* 2013 warnings in vector relational code #782 -- Fixed *ICC* build errors with constexpr #704 -- Fixed defaulted operator= and constructors #791 -- Fixed invalid conversion from int scalar with vec4 constructor when using SSE instruction -- Fixed infinite loop in random functions when using negative radius values using an assert #739 - -### [GLM 0.9.9.0](https://github.com/g-truc/glm/releases/tag/0.9.9.0) - 2018-05-22 -#### Features: -- Added *RGBM* encoding in *GLM_GTC_packing* #420 -- Added *GLM_GTX_color_encoding* extension -- Added *GLM_GTX_vec_swizzle*, faster compile time swizzling then swizzle operator #558 -- Added *GLM_GTX_exterior_product* with a `vec2` `glm::cross` implementation #621 -- Added *GLM_GTX_matrix_factorisation* to factor matrices in various forms #654 -- Added [`GLM_ENABLE_EXPERIMENTAL`](manual.md#section7_4) to enable experimental features. -- Added packing functions for integer vectors #639 -- Added conan packaging configuration #643 #641 -- Added `glm::quatLookAt` to *GLM_GTX_quaternion* #659 -- Added `glm::fmin`, `glm::fmax` and `glm::fclamp` to *GLM_GTX_extended_min_max* #372 -- Added *GLM_EXT_vector_relational*: extend `glm::equal` and `glm::notEqual` to take an epsilon argument -- Added *GLM_EXT_vector_relational*: `glm::openBounded` and `glm::closeBounded` -- Added *GLM_EXT_vec1*: `*vec1` types -- Added *GLM_GTX_texture*: `levels` function -- Added spearate functions to use both nagative one and zero near clip plans #680 -- Added `GLM_FORCE_SINGLE_ONLY` to use *GLM* on platforms that don't support double #627 -- Added *GLM_GTX_easing* for interpolation functions #761 - -#### Improvements: -- No more default initialization of vector, matrix and quaternion types -- Added lowp variant of GTC_color_space convertLinearToSRGB #419 -- Replaced the manual by a markdown version #458 -- Improved API documentation #668 -- Optimized GTC_packing implementation -- Optimized GTC_noise functions -- Optimized GTC_color_space HSV to RGB conversions -- Optimised GTX_color_space_YCoCg YCoCgR conversions -- Optimized GTX_matrix_interpolation axisAngle function -- Added FAQ 12: Windows headers cause build errors... #557 -- Removed GCC shadow warnings #595 -- Added error for including of different versions of GLM #619 -- Added GLM_FORCE_IGNORE_VERSION to ignore error caused by including different version of GLM #619 -- Reduced warnings when using very strict compilation flags #646 -- length() member functions are constexpr #657 -- Added support of -Weverything with Clang #646 -- Improved exponential function test coverage -- Enabled warnings as error with Clang unit tests -- Conan package is an external repository: https://github.com/bincrafters/conan-glm -- Clarify quat_cast documentation, applying on pure rotation matrices #759 - -#### Fixes: -- Removed doxygen references to *GLM_GTC_half_float* which was removed in 0.9.4 -- Fixed `glm::decompose` #448 -- Fixed `glm::intersectRayTriangle` #6 -- Fixed dual quaternion != operator #629 -- Fixed usused variable warning in *GLM_GTX_spline* #618 -- Fixed references to `GLM_FORCE_RADIANS` which was removed #642 -- Fixed `glm::fastInverseSqrt` to use fast inverse square #640 -- Fixed `glm::axisAngle` NaN #638 -- Fixed integer pow from *GLM_GTX_integer* with null exponent #658 -- Fixed `quat` `normalize` build error #656 -- Fixed *Visual C++ 2017.2* warning regarding `__has_feature` definision #655 -- Fixed documentation warnings -- Fixed `GLM_HAS_OPENMP` when *OpenMP* is not enabled -- Fixed Better follow GLSL `min` and `max` specification #372 -- Fixed quaternion constructor from two vectors special cases #469 -- Fixed `glm::to_string` on quaternions wrong components order #681 -- Fixed `glm::acsch` #698 -- Fixed `glm::isnan` on *CUDA* #727 - -#### Deprecation: -- Requires *Visual Studio 2013*, *GCC 4.7*, *Clang 3.4*, *Cuda 7*, *ICC 2013* or a C++11 compiler -- Removed *GLM_GTX_simd_vec4* extension -- Removed *GLM_GTX_simd_mat4* extension -- Removed *GLM_GTX_simd_quat* extension -- Removed `GLM_SWIZZLE`, use `GLM_FORCE_SWIZZLE` instead -- Removed `GLM_MESSAGES`, use `GLM_FORCE_MESSAGES` instead -- Removed `GLM_DEPTH_ZERO_TO_ONE`, use `GLM_FORCE_DEPTH_ZERO_TO_ONE` instead -- Removed `GLM_LEFT_HANDED`, use `GLM_FORCE_LEFT_HANDED` instead -- Removed `GLM_FORCE_NO_CTOR_INIT` -- Removed `glm::uninitialize` - ---- -### [GLM 0.9.8.5](https://github.com/g-truc/glm/releases/tag/0.9.8.5) - 2017-08-16 -#### Features: -- Added *Conan* package support #647 - -#### Fixes: -- Fixed *Clang* version detection from source #608 -- Fixed `glm::packF3x9_E1x5` exponent packing #614 -- Fixed build error `min` and `max` specializations with integer #616 -- Fixed `simd_mat4` build error #652 - ---- -### [GLM 0.9.8.4](https://github.com/g-truc/glm/releases/tag/0.9.8.4) - 2017-01-22 -#### Fixes: -- Fixed *GLM_GTC_packing* test failing on *GCC* x86 due to denorms #212 #577 -- Fixed `POPCNT` optimization build in *Clang* #512 -- Fixed `glm::intersectRayPlane` returns true in parallel case #578 -- Fixed *GCC* 6.2 compiler warnings #580 -- Fixed *GLM_GTX_matrix_decompose* `glm::decompose` #582 #448 -- Fixed *GCC* 4.5 and older build #566 -- Fixed *Visual C++* internal error when declaring a global vec type with siwzzle expression enabled #594 -- Fixed `GLM_FORCE_CXX11` with Clang and libstlc++ which wasn't using C++11 STL features. #604 - ---- -### [GLM 0.9.8.3](https://github.com/g-truc/glm/releases/tag/0.9.8.3) - 2016-11-12 -#### Improvements: -- Broader support of `GLM_FORCE_UNRESTRICTED_GENTYPE` #378 - -#### Fixes: -- Fixed Android build error with C++11 compiler but C++98 STL #284 #564 -- Fixed *GLM_GTX_transform2* shear* functions #403 -- Fixed interaction between `GLM_FORCE_UNRESTRICTED_GENTYPE` and `glm::ortho` function #568 -- Fixed `glm::bitCount` with AVX on 32 bit builds #567 -- Fixed *CMake* `find_package` with version specification #572 #573 - ---- -### [GLM 0.9.8.2](https://github.com/g-truc/glm/releases/tag/0.9.8.2) - 2016-11-01 -#### Improvements: -- Added *Visual C++* 15 detection -- Added *Clang* 4.0 detection -- Added warning messages when using `GLM_FORCE_CXX**` but the compiler - is known to not fully support the requested C++ version #555 -- Refactored `GLM_COMPILER_VC` values -- Made quat, vec, mat type component `length()` static #565 - -#### Fixes: -- Fixed *Visual C++* `constexpr` build error #555, #556 - ---- -### [GLM 0.9.8.1](https://github.com/g-truc/glm/releases/tag/0.9.8.1) - 2016-09-25 -#### Improvements: -- Optimized quaternion `glm::log` function #554 - -#### Fixes: -- Fixed *GCC* warning filtering, replaced -pedantic by -Wpedantic -- Fixed SIMD faceforward bug. #549 -- Fixed *GCC* 4.8 with C++11 compilation option #550 -- Fixed *Visual Studio* aligned type W4 warning #548 -- Fixed packing/unpacking function fixed for 5_6_5 and 5_5_5_1 #552 - ---- -### [GLM 0.9.8.0](https://github.com/g-truc/glm/releases/tag/0.9.8.0) - 2016-09-11 -#### Features: -- Added right and left handed projection and clip control support #447 #415 #119 -- Added `glm::compNormalize` and `glm::compScale` functions to *GLM_GTX_component_wise* -- Added `glm::packF3x9_E1x5` and `glm::unpackF3x9_E1x5` to *GLM_GTC_packing* for RGB9E5 #416 -- Added `(un)packHalf` to *GLM_GTC_packing* -- Added `(un)packUnorm` and `(un)packSnorm` to *GLM_GTC_packing* -- Added 16bit pack and unpack to *GLM_GTC_packing* -- Added 8bit pack and unpack to *GLM_GTC_packing* -- Added missing `bvec*` && and || operators -- Added `glm::iround` and `glm::uround` to *GLM_GTC_integer*, fast round on positive values -- Added raw SIMD API -- Added 'aligned' qualifiers -- Added *GLM_GTC_type_aligned* with aligned *vec* types -- Added *GLM_GTC_functions* extension -- Added quaternion version of `glm::isnan` and `glm::isinf` #521 -- Added `glm::lowestBitValue` to *GLM_GTX_bit* #536 -- Added `GLM_FORCE_UNRESTRICTED_GENTYPE` allowing non basic `genType` #543 - -#### Improvements: -- Improved SIMD and swizzle operators interactions with *GCC* and *Clang* #474 -- Improved *GLM_GTC_random* `linearRand` documentation -- Improved *GLM_GTC_reciprocal* documentation -- Improved `GLM_FORCE_EXPLICIT_CTOR` coverage #481 -- Improved *OpenMP* support detection for *Clang*, *GCC*, *ICC* and *VC* -- Improved *GLM_GTX_wrap* for SIMD friendliness -- Added `constexpr` for `*vec*`, `*mat*`, `*quat*` and `*dual_quat*` types #493 -- Added *NEON* instruction set detection -- Added *MIPS* CPUs detection -- Added *PowerPC* CPUs detection -- Use *Cuda* built-in function for abs function implementation with Cuda compiler -- Factorized `GLM_COMPILER_LLVM` and `GLM_COMPILER_APPLE_CLANG` into `GLM_COMPILER_CLANG` -- No more warnings for use of long long -- Added more information to build messages - -#### Fixes: -- Fixed *GLM_GTX_extended_min_max* filename typo #386 -- Fixed `glm::intersectRayTriangle` to not do any unintentional backface culling -- Fixed long long warnings when using C++98 on *GCC* and *Clang* #482 -- Fixed sign with signed integer function on non-x86 architecture -- Fixed strict aliasing warnings #473 -- Fixed missing `glm::vec1` overload to `glm::length2` and `glm::distance2` functions #431 -- Fixed *GLM* test '/fp:fast' and '/Za' command-line options are incompatible -- Fixed quaterion to mat3 cast function `glm::mat3_cast` from *GLM_GTC_quaternion* #542 -- Fixed *GLM_GTX_io* for *Cuda* #547 #546 - -#### Deprecation: -- Removed `GLM_FORCE_SIZE_FUNC` define -- Deprecated *GLM_GTX_simd_vec4* extension -- Deprecated *GLM_GTX_simd_mat4* extension -- Deprecated *GLM_GTX_simd_quat* extension -- Deprecated `GLM_SWIZZLE`, use `GLM_FORCE_SWIZZLE` instead -- Deprecated `GLM_MESSAGES`, use `GLM_FORCE_MESSAGES` instead - ---- -### [GLM 0.9.7.6](https://github.com/g-truc/glm/releases/tag/0.9.7.6) - 2016-07-16 -#### Improvements: -- Added pkg-config file #509 -- Updated list of compiler versions detected -- Improved C++ 11 STL detection #523 - -#### Fixes: -- Fixed STL for C++11 detection on ICC #510 -- Fixed missing vec1 overload to length2 and distance2 functions #431 -- Fixed long long warnings when using C++98 on GCC and Clang #482 -- Fixed scalar reciprocal functions (GTC_reciprocal) #520 - ---- -### [GLM 0.9.7.5](https://github.com/g-truc/glm/releases/tag/0.9.7.5) - 2016-05-24 -#### Improvements: -- Added Visual C++ Clang toolset detection - -#### Fixes: -- Fixed uaddCarry warning #497 -- Fixed roundPowerOfTwo and floorPowerOfTwo #503 -- Fixed Visual C++ SIMD instruction set automatic detection in 64 bits -- Fixed to_string when used with GLM_FORCE_INLINE #506 -- Fixed GLM_FORCE_INLINE with binary vec4 operators -- Fixed GTX_extended_min_max filename typo #386 -- Fixed intersectRayTriangle to not do any unintentional backface culling - ---- -### [GLM 0.9.7.4](https://github.com/g-truc/glm/releases/tag/0.9.7.4) - 2016-03-19 -#### Fixes: -- Fixed asinh and atanh warning with C++98 STL #484 -- Fixed polar coordinates function latitude #485 -- Fixed outerProduct defintions and operator signatures for mat2x4 and vec4 #475 -- Fixed eulerAngles precision error, returns NaN #451 -- Fixed undefined reference errors #489 -- Fixed missing GLM_PLATFORM_CYGWIN declaration #495 -- Fixed various undefined reference errors #490 - ---- -### [GLM 0.9.7.3](https://github.com/g-truc/glm/releases/tag/0.9.7.3) - 2016-02-21 -#### Improvements: -- Added AVX512 detection - -#### Fixes: -- Fixed CMake policy warning -- Fixed GCC 6.0 detection #477 -- Fixed Clang build on Windows #479 -- Fixed 64 bits constants warnings on GCC #463 - ---- -### [GLM 0.9.7.2](https://github.com/g-truc/glm/releases/tag/0.9.7.2) - 2016-01-03 -#### Fixes: -- Fixed GTC_round floorMultiple/ceilMultiple #412 -- Fixed GTC_packing unpackUnorm3x10_1x2 #414 -- Fixed GTC_matrix_inverse affineInverse #192 -- Fixed ICC on Linux build errors #449 -- Fixed ldexp and frexp compilation errors -- Fixed "Declaration shadows a field" warning #468 -- Fixed 'GLM_COMPILER_VC2005 is not defined' warning #468 -- Fixed various 'X is not defined' warnings #468 -- Fixed missing unary + operator #435 -- Fixed Cygwin build errors when using C++11 #405 - ---- -### [GLM 0.9.7.1](https://github.com/g-truc/glm/releases/tag/0.9.7.1) - 2015-09-07 -#### Improvements: -- Improved constexpr for constant functions coverage #198 -- Added to_string for quat and dual_quat in GTX_string_cast #375 -- Improved overall execution time of unit tests #396 - -#### Fixes: -- Fixed strict alignment warnings #235 #370 -- Fixed link errors on compilers not supported default function #377 -- Fixed compilation warnings in vec4 -- Fixed non-identity quaternions for equal vectors #234 -- Fixed excessive GTX_fast_trigonometry execution time #396 -- Fixed Visual Studio 2015 'hides class member' warnings #394 -- Fixed builtin bitscan never being used #392 -- Removed unused func_noise.* files #398 - ---- -### [GLM 0.9.7.0](https://github.com/g-truc/glm/releases/tag/0.9.7.0) - 2015-08-02 -#### Features: -- Added GTC_color_space: convertLinearToSRGB and convertSRGBToLinear functions -- Added 'fmod' overload to GTX_common with tests #308 -- Left handed perspective and lookAt functions #314 -- Added functions eulerAngleXYZ and extractEulerAngleXYZ #311 -- Added <glm/gtx/hash.hpp> to perform std::hash on GLM types #320 #367 -- Added <glm/gtx/wrap.hpp> for texcoord wrapping -- Added static components and precision members to all vector and quat types #350 -- Added .gitignore #349 -- Added support of defaulted functions to GLM types, to use them in unions #366 - -#### Improvements: -- Changed usage of __has_include to support Intel compiler #307 -- Specialized integer implementation of YCoCg-R #310 -- Don't show status message in 'FindGLM' if 'QUIET' option is set. #317 -- Added master branch continuous integration service on Linux 64 #332 -- Clarified manual regarding angle unit in GLM, added FAQ 11 #326 -- Updated list of compiler versions - -#### Fixes: -- Fixed default precision for quat and dual_quat type #312 -- Fixed (u)int64 MSB/LSB handling on BE archs #306 -- Fixed multi-line comment warning in g++. #315 -- Fixed specifier removal by 'std::make_pair<>' #333 -- Fixed perspective fovy argument documentation #327 -- Removed -m64 causing build issues on Linux 32 #331 -- Fixed isfinite with C++98 compilers #343 -- Fixed Intel compiler build error on Linux #354 -- Fixed use of libstdc++ with Clang #351 -- Fixed quaternion pow #346 -- Fixed decompose warnings #373 -- Fixed matrix conversions #371 - -#### Deprecation: -- Removed integer specification for 'mod' in GTC_integer #308 -- Removed GTX_multiple, replaced by GTC_round - ---- -### [GLM 0.9.6.3](https://github.com/g-truc/glm/releases/tag/0.9.6.3) - 2015-02-15 -- Fixed Android doesn't have C++ 11 STL #284 - ---- -### [GLM 0.9.6.2](https://github.com/g-truc/glm/releases/tag/0.9.6.2) - 2015-02-15 -#### Features: -- Added display of GLM version with other GLM_MESSAGES -- Added ARM instruction set detection - -#### Improvements: -- Removed assert for perspective with zFar < zNear #298 -- Added Visual Studio natvis support for vec1, quat and dualqual types -- Cleaned up C++11 feature detections -- Clarify GLM licensing - -#### Fixes: -- Fixed faceforward build #289 -- Fixed conflict with Xlib #define True 1 #293 -- Fixed decompose function VS2010 templating issues #294 -- Fixed mat4x3 = mat2x3 * mat4x2 operator #297 -- Fixed warnings in F2x11_1x10 packing function in GTC_packing #295 -- Fixed Visual Studio natvis support for vec4 #288 -- Fixed GTC_packing *pack*norm*x* build and added tests #292 -- Disabled GTX_scalar_multiplication for GCC, failing to build tests #242 -- Fixed Visual C++ 2015 constexpr errors: Disabled only partial support -- Fixed functions not inlined with Clang #302 -- Fixed memory corruption (undefined behaviour) #303 - ---- -### [GLM 0.9.6.1](https://github.com/g-truc/glm/releases/tag/0.9.6.1) - 2014-12-10 -#### Features: -- Added GLM_LANG_CXX14_FLAG and GLM_LANG_CXX1Z_FLAG language feature flags -- Added C++14 detection - -#### Improvements: -- Clean up GLM_MESSAGES compilation log to report only detected capabilities - -#### Fixes: -- Fixed scalar uaddCarry build error with Cuda #276 -- Fixed C++11 explicit conversion operators detection #282 -- Fixed missing explicit conversion when using integer log2 with *vec1 types -- Fixed 64 bits integer GTX_string_cast to_string on VC 32 bit compiler -- Fixed Android build issue, STL C++11 is not supported by the NDK #284 -- Fixed unsupported _BitScanForward64 and _BitScanReverse64 in VC10 -- Fixed Visual C++ 32 bit build #283 -- Fixed GLM_FORCE_SIZE_FUNC pragma message -- Fixed C++98 only build -- Fixed conflict between GTX_compatibility and GTC_quaternion #286 -- Fixed C++ language restriction using GLM_FORCE_CXX** - ---- -### [GLM 0.9.6.0](https://github.com/g-truc/glm/releases/tag/0.9.6.0) - 2014-11-30 -#### Features: -- Exposed template vector and matrix types in 'glm' namespace #239, #244 -- Added GTX_scalar_multiplication for C++ 11 compiler only #242 -- Added GTX_range for C++ 11 compiler only #240 -- Added closestPointOnLine function for tvec2 to GTX_closest_point #238 -- Added GTC_vec1 extension, *vec1 support to *vec* types -- Updated GTX_associated_min_max with vec1 support -- Added support of precision and integers to linearRand #230 -- Added Integer types support to GTX_string_cast #249 -- Added vec3 slerp #237 -- Added GTX_common with isdenomal #223 -- Added GLM_FORCE_SIZE_FUNC to replace .length() by .size() #245 -- Added GLM_FORCE_NO_CTOR_INIT -- Added 'uninitialize' to explicitly not initialize a GLM type -- Added GTC_bitfield extension, promoted GTX_bit -- Added GTC_integer extension, promoted GTX_bit and GTX_integer -- Added GTC_round extension, promoted GTX_bit -- Added GLM_FORCE_EXPLICIT_CTOR to require explicit type conversions #269 -- Added GTX_type_aligned for aligned vector, matrix and quaternion types - -#### Improvements: -- Rely on C++11 to implement isinf and isnan -- Removed GLM_FORCE_CUDA, Cuda is implicitly detected -- Separated Apple Clang and LLVM compiler detection -- Used pragma once -- Undetected C++ compiler automatically compile with GLM_FORCE_CXX98 and - GLM_FORCE_PURE -- Added not function (from GLSL specification) on VC12 -- Optimized bitfieldReverse and bitCount functions -- Optimized findLSB and findMSB functions. -- Optimized matrix-vector multiple performance with Cuda #257, #258 -- Reduced integer type redifinitions #233 -- Rewrited of GTX_fast_trigonometry #264 #265 -- Made types trivially copyable #263 -- Removed <iostream> in GLM tests -- Used std features within GLM without redeclaring -- Optimized cot function #272 -- Optimized sign function #272 -- Added explicit cast from quat to mat3 and mat4 #275 - -#### Fixes: -- Fixed std::nextafter not supported with C++11 on Android #217 -- Fixed missing value_type for dual quaternion -- Fixed return type of dual quaternion length -- Fixed infinite loop in isfinite function with GCC #221 -- Fixed Visual Studio 14 compiler warnings -- Fixed implicit conversion from another tvec2 type to another tvec2 #241 -- Fixed lack of consistency of quat and dualquat constructors -- Fixed uaddCarray #253 -- Fixed float comparison warnings #270 - -#### Deprecation: -- Requires Visual Studio 2010, GCC 4.2, Apple Clang 4.0, LLVM 3.0, Cuda 4, ICC 2013 or a C++98 compiler -- Removed degrees for function parameters -- Removed GLM_FORCE_RADIANS, active by default -- Removed VC 2005 / 8 and 2008 / 9 support -- Removed GCC 3.4 to 4.3 support -- Removed LLVM GCC support -- Removed LLVM 2.6 to 3.1 support -- Removed CUDA 3.0 to 3.2 support - ---- -### [GLM 0.9.5.4 - 2014-06-21](https://github.com/g-truc/glm/releases/tag/0.9.5.4) -- Fixed non-utf8 character #196 -- Added FindGLM install for CMake #189 -- Fixed GTX_color_space - saturation #195 -- Fixed glm::isinf and glm::isnan for with Android NDK 9d #191 -- Fixed builtin GLM_ARCH_SSE4 #204 -- Optimized Quaternion vector rotation #205 -- Fixed missing doxygen @endcond tag #211 -- Fixed instruction set detection with Clang #158 -- Fixed orientate3 function #207 -- Fixed lerp when cosTheta is close to 1 in quaternion slerp #210 -- Added GTX_io for io with <iostream> #144 -- Fixed fastDistance ambiguity #215 -- Fixed tweakedInfinitePerspective #208 and added user-defined epsilon to - tweakedInfinitePerspective -- Fixed std::copy and std::vector with GLM types #214 -- Fixed strict aliasing issues #212, #152 -- Fixed std::nextafter not supported with C++11 on Android #213 -- Fixed corner cases in exp and log functions for quaternions #199 - ---- -### GLM 0.9.5.3 - 2014-04-02 -- Added instruction set auto detection with Visual C++ using _M_IX86_FP - /arch - compiler argument -- Fixed GTX_raw_data code dependency -- Fixed GCC instruction set detection -- Added GLM_GTX_matrix_transform_2d extension (#178, #176) -- Fixed CUDA issues (#169, #168, #183, #182) -- Added support for all extensions but GTX_string_cast to CUDA -- Fixed strict aliasing warnings in GCC 4.8.1 / Android NDK 9c (#152) -- Fixed missing bitfieldInterleave definisions -- Fixed usubBorrow (#171) -- Fixed eulerAngle*** not consistent for right-handed coordinate system (#173) -- Added full tests for eulerAngle*** functions (#173) -- Added workaround for a CUDA compiler bug (#186, #185) - ---- -### GLM 0.9.5.2 - 2014-02-08 -- Fixed initializer list ambiguity (#159, #160) -- Fixed warnings with the Android NDK 9c -- Fixed non power of two matrix products -- Fixed mix function link error -- Fixed SSE code included in GLM tests on "pure" platforms -- Fixed undefined reference to fastInverseSqrt (#161) -- Fixed GLM_FORCE_RADIANS with <glm/ext.hpp> build error (#165) -- Fix dot product clamp range for vector angle functions. (#163) -- Tentative fix for strict aliasing warning in GCC 4.8.1 / Android NDK 9c (#152) -- Fixed GLM_GTC_constants description brief (#162) - ---- -### GLM 0.9.5.1 - 2014-01-11 -- Fixed angle and orientedAngle that sometimes return NaN values (#145) -- Deprecated degrees for function parameters and display a message -- Added possible static_cast conversion of GLM types (#72) -- Fixed error 'inverse' is not a member of 'glm' from glm::unProject (#146) -- Fixed mismatch between some declarations and definitions -- Fixed inverse link error when using namespace glm; (#147) -- Optimized matrix inverse and division code (#149) -- Added intersectRayPlane function (#153) -- Fixed outerProduct return type (#155) - ---- -### GLM 0.9.5.0 - 2013-12-25 -- Added forward declarations (glm/fwd.hpp) for faster compilations -- Added per feature headers -- Minimized GLM internal dependencies -- Improved Intel Compiler detection -- Added bitfieldInterleave and _mm_bit_interleave_si128 functions -- Added GTX_scalar_relational -- Added GTX_dual_quaternion -- Added rotation function to GTX_quaternion (#22) -- Added precision variation of each type -- Added quaternion comparison functions -- Fixed GTX_multiple for negative value -- Removed GTX_ocl_type extension -- Fixed post increment and decrement operators -- Fixed perspective with zNear == 0 (#71) -- Removed l-value swizzle operators -- Cleaned up compiler detection code for unsupported compilers -- Replaced C cast by C++ casts -- Fixed .length() that should return a int and not a size_t -- Added GLM_FORCE_SIZE_T_LENGTH and glm::length_t -- Removed unnecessary conversions -- Optimized packing and unpacking functions -- Removed the normalization of the up argument of lookAt function (#114) -- Added low precision specializations of inversesqrt -- Fixed ldexp and frexp implementations -- Increased assert coverage -- Increased static_assert coverage -- Replaced GLM traits by STL traits when possible -- Allowed including individual core feature -- Increased unit tests completness -- Added creating of a quaternion from two vectors -- Added C++11 initializer lists -- Fixed umulExtended and imulExtended implementations for vector types (#76) -- Fixed CUDA coverage for GTC extensions -- Added GTX_io extension -- Improved GLM messages enabled when defining GLM_MESSAGES -- Hidden matrix _inverse function implementation detail into private section - ---- -### [GLM 0.9.4.6](https://github.com/g-truc/glm/releases/tag/0.9.4.6) - 2013-09-20 -- Fixed detection to select the last known compiler if newer version #106 -- Fixed is_int and is_uint code duplication with GCC and C++11 #107 -- Fixed test suite build while using Clang in C++11 mode -- Added c++1y mode support in CMake test suite -- Removed ms extension mode to CMake when no using Visual C++ -- Added pedantic mode to CMake test suite for Clang and GCC -- Added use of GCC frontend on Unix for ICC and Visual C++ fronted on Windows - for ICC -- Added compilation errors for unsupported compiler versions -- Fixed glm::orientation with GLM_FORCE_RADIANS defined #112 -- Fixed const ref issue on assignment operator taking a scalar parameter #116 -- Fixed glm::eulerAngleY implementation #117 - ---- -### GLM 0.9.4.5 - 2013-08-12 -- Fixed CUDA support -- Fixed inclusion of intrinsics in "pure" mode #92 -- Fixed language detection on GCC when the C++0x mode isn't enabled #95 -- Fixed issue #97: register is deprecated in C++11 -- Fixed issue #96: CUDA issues -- Added Windows CE detection #92 -- Added missing value_ptr for quaternions #99 - ---- -### GLM 0.9.4.4 - 2013-05-29 -- Fixed slerp when costheta is close to 1 #65 -- Fixed mat4x2 value_type constructor #70 -- Fixed glm.natvis for Visual C++ 12 #82 -- Added assert in inversesqrt to detect division by zero #61 -- Fixed missing swizzle operators #86 -- Fixed CUDA warnings #86 -- Fixed GLM natvis for VC11 #82 -- Fixed GLM_GTX_multiple with negative values #79 -- Fixed glm::perspective when zNear is zero #71 - ---- -### GLM 0.9.4.3 - 2013-03-20 -- 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 - ---- -### GLM 0.9.4.2 - 2013-02-14 -- Fixed compAdd from GTX_component_wise -- Fixed SIMD support for Intel compiler on Windows -- Fixed isnan and isinf for CUDA compiler -- Fixed GLM_FORCE_RADIANS on glm::perspective -- Fixed GCC warnings -- Fixed packDouble2x32 on Xcode -- Fixed mix for vec4 SSE implementation -- Fixed 0x2013 dash character in comments that cause issue in Windows - Japanese mode -- Fixed documentation warnings -- Fixed CUDA warnings - ---- -### GLM 0.9.4.1 - 2012-12-22 -- Improved half support: -0.0 case and implicit conversions -- Fixed Intel Composer Compiler support on Linux -- Fixed interaction between quaternion and euler angles -- Fixed GTC_constants build -- Fixed GTX_multiple -- Fixed quat slerp using mix function when cosTheta close to 1 -- Improved fvec4SIMD and fmat4x4SIMD implementations -- Fixed assert messages -- Added slerp and lerp quaternion functions and tests - ---- -### GLM 0.9.4.0 - 2012-11-18 -- Added Intel Composer Compiler support -- Promoted GTC_espilon extension -- Promoted GTC_ulp extension -- Removed GLM website from the source repository -- Added GLM_FORCE_RADIANS so that all functions takes radians for arguments -- Fixed detection of Clang and LLVM GCC on MacOS X -- Added debugger visualizers for Visual C++ 2012 -- Requires Visual Studio 2005, GCC 4.2, Clang 2.6, Cuda 3, ICC 2013 or a C++98 compiler - ---- -### [GLM 0.9.3.4](https://github.com/g-truc/glm/releases/tag/0.9.3.4) - 2012-06-30 -- Added SSE4 and AVX2 detection. -- Removed VIRTREV_xstream and the incompatibility generated with GCC -- Fixed C++11 compiler option for GCC -- Removed MS language extension option for GCC (not fonctionnal) -- Fixed bitfieldExtract for vector types -- Fixed warnings -- Fixed SSE includes - ---- -### GLM 0.9.3.3 - 2012-05-10 -- Fixed isinf and isnan -- Improved compatibility with Intel compiler -- Added CMake test build options: SIMD, C++11, fast math and MS land ext -- Fixed SIMD mat4 test on GCC -- Fixed perspectiveFov implementation -- Fixed matrixCompMult for none-square matrices -- Fixed namespace issue on stream operators -- Fixed various warnings -- Added VC11 support - ---- -### GLM 0.9.3.2 - 2012-03-15 -- Fixed doxygen documentation -- Fixed Clang version detection -- Fixed simd mat4 /= operator - ---- -### GLM 0.9.3.1 - 2012-01-25 -- Fixed platform detection -- Fixed warnings -- Removed detail code from Doxygen doc - ---- -### GLM 0.9.3.0 - 2012-01-09 -- Added CPP Check project -- Fixed conflict with Windows headers -- Fixed isinf implementation -- Fixed Boost conflict -- Fixed warnings - ---- -### GLM 0.9.3.B - 2011-12-12 -- Added support for Chrone Native Client -- Added epsilon constant -- Removed value_size function from vector types -- Fixed roundEven on GCC -- Improved API documentation -- Fixed modf implementation -- Fixed step function accuracy -- Fixed outerProduct - ---- -### GLM 0.9.3.A - 2011-11-11 -- Improved doxygen documentation -- Added new swizzle operators for C++11 compilers -- Added new swizzle operators declared as functions -- Added GLSL 4.20 length for vector and matrix types -- Promoted GLM_GTC_noise extension: simplex, perlin, periodic noise functions -- Promoted GLM_GTC_random extension: linear, gaussian and various random number -generation distribution -- Added GLM_GTX_constants: provides useful constants -- Added extension versioning -- Removed many unused namespaces -- Fixed half based type contructors -- Added GLSL core noise functions - ---- -### [GLM 0.9.2.7](https://github.com/g-truc/glm/releases/tag/0.9.2.7) - 2011-10-24 -- Added more swizzling constructors -- Added missing none-squared matrix products - ---- -### [GLM 0.9.2.6](https://github.com/g-truc/glm/releases/tag/0.9.2.6) - 2011-10-01 -- Fixed half based type build on old GCC -- Fixed /W4 warnings on Visual C++ -- Fixed some missing l-value swizzle operators - ---- -### GLM 0.9.2.5 - 2011-09-20 -- Fixed floatBitToXint functions -- Fixed pack and unpack functions -- Fixed round functions - ---- -### GLM 0.9.2.4 - 2011-09-03 -- Fixed extensions bugs - ---- -### GLM 0.9.2.3 - 2011-06-08 -- Fixed build issues - ---- -### GLM 0.9.2.2 - 2011-06-02 -- Expend matrix constructors flexibility -- Improved quaternion implementation -- Fixed many warnings across platforms and compilers - ---- -### GLM 0.9.2.1 - 2011-05-24 -- Automatically detect CUDA support -- Improved compiler detection -- Fixed errors and warnings in VC with C++ extensions disabled -- Fixed and tested GLM_GTX_vector_angle -- Fixed and tested GLM_GTX_rotate_vector - ---- -### GLM 0.9.2.0 - 2011-05-09 -- Added CUDA support -- Added CTest test suite -- Added GLM_GTX_ulp extension -- Added GLM_GTX_noise extension -- Added GLM_GTX_matrix_interpolation extension -- Updated quaternion slerp interpolation - ---- -### [GLM 0.9.1.3](https://github.com/g-truc/glm/releases/tag/0.9.1.3) - 2011-05-07 -- Fixed bugs - ---- -### GLM 0.9.1.2 - 2011-04-15 -- Fixed bugs - ---- -### GLM 0.9.1.1 - 2011-03-17 -- Fixed bugs - ---- -### GLM 0.9.1.0 - 2011-03-03 -- Fixed bugs - ---- -### GLM 0.9.1.B - 2011-02-13 -- Updated API documentation -- Improved SIMD implementation -- Fixed Linux build - ---- -### [GLM 0.9.0.8](https://github.com/g-truc/glm/releases/tag/0.9.0.8) - 2011-02-13 -- Added quaternion product operator. -- Clarify that GLM is a header only library. - ---- -### GLM 0.9.1.A - 2011-01-31 -- Added SIMD support -- Added new swizzle functions -- Improved static assert error message with C++0x static_assert -- New setup system -- Reduced branching -- Fixed trunc implementation - ---- -### [GLM 0.9.0.7](https://github.com/g-truc/glm/releases/tag/0.9.0.7) - 2011-01-30 -- Added GLSL 4.10 packing functions -- Added == and != operators for every types. - ---- -### GLM 0.9.0.6 - 2010-12-21 -- Many matrices bugs fixed - ---- -### GLM 0.9.0.5 - 2010-11-01 -- Improved Clang support -- Fixed bugs - ---- -### GLM 0.9.0.4 - 2010-10-04 -- Added autoexp for GLM -- Fixed bugs - ---- -### GLM 0.9.0.3 - 2010-08-26 -- Fixed non-squared matrix operators - ---- -### GLM 0.9.0.2 - 2010-07-08 -- Added GLM_GTX_int_10_10_10_2 -- Fixed bugs - ---- -### GLM 0.9.0.1 - 2010-06-21 -- Fixed extensions errors - ---- -### GLM 0.9.0.0 - 2010-05-25 -- Objective-C support -- Fixed warnings -- Updated documentation - ---- -### GLM 0.9.B.2 - 2010-04-30 -- Git transition -- Removed experimental code from releases -- Fixed bugs - ---- -### GLM 0.9.B.1 - 2010-04-03 -- Based on GLSL 4.00 specification -- Added the new core functions -- Added some implicit conversion support - ---- -### GLM 0.9.A.2 - 2010-02-20 -- Improved some possible errors messages -- Improved declarations and definitions match - ---- -### GLM 0.9.A.1 - 2010-02-09 -- Removed deprecated features -- Internal redesign - ---- -### GLM 0.8.4.4 final - 2010-01-25 -- Fixed warnings - ---- -### GLM 0.8.4.3 final - 2009-11-16 -- Fixed Half float arithmetic -- Fixed setup defines - ---- -### GLM 0.8.4.2 final - 2009-10-19 -- Fixed Half float adds - ---- -### GLM 0.8.4.1 final - 2009-10-05 -- Updated documentation -- Fixed MacOS X build - ---- -### GLM 0.8.4.0 final - 2009-09-16 -- Added GCC 4.4 and VC2010 support -- Added matrix optimizations - ---- -### GLM 0.8.3.5 final - 2009-08-11 -- Fixed bugs - ---- -### GLM 0.8.3.4 final - 2009-08-10 -- Updated GLM according GLSL 1.5 spec -- Fixed bugs - ---- -### GLM 0.8.3.3 final - 2009-06-25 -- Fixed bugs - ---- -### GLM 0.8.3.2 final - 2009-06-04 -- Added GLM_GTC_quaternion -- Added GLM_GTC_type_precision - ---- -### GLM 0.8.3.1 final - 2009-05-21 -- Fixed old extension system. - ---- -### GLM 0.8.3.0 final - 2009-05-06 -- Added stable extensions. -- Added new extension system. - ---- -### GLM 0.8.2.3 final - 2009-04-01 -- Fixed bugs. - ---- -### GLM 0.8.2.2 final - 2009-02-24 -- Fixed bugs. - ---- -### GLM 0.8.2.1 final - 2009-02-13 -- Fixed bugs. - ---- -### GLM 0.8.2 final - 2009-01-21 -- Fixed bugs. - ---- -### GLM 0.8.1 final - 2008-10-30 -- Fixed bugs. - ---- -### GLM 0.8.0 final - 2008-10-23 -- New method to use extension. - ---- -### GLM 0.8.0 beta3 - 2008-10-10 -- Added CMake support for GLM tests. - ---- -### GLM 0.8.0 beta2 - 2008-10-04 -- Improved half scalars and vectors support. - ---- -### GLM 0.8.0 beta1 - 2008-09-26 -- Improved GLSL conformance -- Added GLSL 1.30 support -- Improved API documentation - ---- -### GLM 0.7.6 final - 2008-08-08 -- Improved C++ standard comformance -- Added Static assert for types checking - ---- -### GLM 0.7.5 final - 2008-07-05 -- Added build message system with Visual Studio -- Pedantic build with GCC - ---- -### GLM 0.7.4 final - 2008-06-01 -- Added external dependencies system. - ---- -### GLM 0.7.3 final - 2008-05-24 -- Fixed bugs -- Added new extension group - ---- -### GLM 0.7.2 final - 2008-04-27 -- Updated documentation -- Added preprocessor options - ---- -### GLM 0.7.1 final - 2008-03-24 -- Disabled half on GCC -- Fixed extensions - ---- -### GLM 0.7.0 final - 2008-03-22 -- Changed to MIT license -- Added new documentation - ---- -### GLM 0.6.4 - 2007-12-10 -- Fixed swizzle operators - ---- -### GLM 0.6.3 - 2007-11-05 -- Fixed type data accesses -- Fixed 3DSMax sdk conflict - ---- -### GLM 0.6.2 - 2007-10-08 -- Fixed extension - ---- -### GLM 0.6.1 - 2007-10-07 -- Fixed a namespace error -- Added extensions - ---- -### GLM 0.6.0 : 2007-09-16 -- Added new extension namespace mecanium -- Added Automatic compiler detection - ---- -### GLM 0.5.1 - 2007-02-19 -- Fixed swizzle operators - ---- -### GLM 0.5.0 - 2007-01-06 -- Upgrated to GLSL 1.2 -- Added swizzle operators -- Added setup settings - ---- -### GLM 0.4.1 - 2006-05-22 -- Added OpenGL examples - ---- -### GLM 0.4.0 - 2006-05-17 -- Added missing operators to vec* and mat* -- Added first GLSL 1.2 features -- Fixed windows.h before glm.h when windows.h required - ---- -### GLM 0.3.2 - 2006-04-21 -- Fixed texcoord components access. -- Fixed mat4 and imat4 division operators. - ---- -### GLM 0.3.1 - 2006-03-28 -- Added GCC 4.0 support under MacOS X. -- Added GCC 4.0 and 4.1 support under Linux. -- Added code optimisations. - ---- -### GLM 0.3 - 2006-02-19 -- Improved GLSL type conversion and construction compliance. -- Added experimental extensions. -- Added Doxygen Documentation. -- Added code optimisations. -- Fixed bugs. - ---- -### GLM 0.2 - 2005-05-05 -- Improve adaptative from GLSL. -- Add experimental extensions based on OpenGL extension process. -- Fixe bugs. - ---- -### GLM 0.1 - 2005-02-21 -- Add vec2, vec3, vec4 GLSL types -- Add ivec2, ivec3, ivec4 GLSL types -- Add bvec2, bvec3, bvec4 GLSL types -- Add mat2, mat3, mat4 GLSL types -- Add almost all functions - |