Skip to content

Releases: g-truc/glm

GLM 1.0.1

26 Feb 14:49
Compare
Choose a tag to compare

Features:

  • Added C++17 [[nodiscard]] support

Improvements:

  • Enables only warnings as errors while building unit tests
  • Added aligned_*vec3 simd support #1245

Fixes:

  • Fixed C++ language auto detection build, disable C++98 warnings with Clang #1235, #1231
  • Fixed GTX_color_space missing <glm/ext/scalar_constants.hpp> include #1233 #1238
  • Fixed EXT_matrix_transform shear implementation #1140 #1182
  • Fixed smoothstep SIMD implementation #1222

GLM 1.0.0

24 Jan 13:30
Compare
Choose a tag to compare

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
  • Added Github Actions
  • Added GLM_FORCE_UNRESTRICTED_FLOAT to prevent static asserts when using other scalar types with function expecting floats.

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 (2pi-1, 2pi) #1038
  • Removed ban on using glm::string_cast with CUDA host code #1041

GLM 0.9.9.8

13 Apr 18:10
Compare
Choose a tag to compare

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 clamp, repeat, mirrorClamp and 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 slerp overload which interpolates with extra spins #996
  • Fixed for glm::length using arch64 #992
  • Fixed singularity check for quatLookAt #770

GLM 0.9.9.7

05 Jan 14:55
Compare
Choose a tag to compare

Improvements:

  • Improved Neon support with more functions optimized #950
  • Added CMake GLM interface #963
  • Added 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 EXT_matrix_clip_space perspectiveFov

GLM 0.9.9.6

08 Sep 11:30
Compare
Choose a tag to compare

Features:

  • Added Neon support to glm #945
  • Added SYCL support #914
  • Added EXT_scalar_integer extension with power of two and multiple scalar functions
  • Added 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 bitCount and 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 ldexp and frexp declaration #895
  • Fixed missing const to quaternion conversion operators #890
  • Fixed EXT_scalar_ulp and 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

GLM 0.9.9.5

02 Apr 09:31
Compare
Choose a tag to compare

Fixes:

  • Fixed build errors when defining GLM_ENABLE_EXPERIMENTAL #884 #883
  • Fixed 'if constexpr' warning #887
  • Fixed missing declarations for frexp and ldexp #886

GLM 0.9.9.4

19 Mar 17:28
Compare
Choose a tag to compare

Features:

  • Added mix implementation for matrices in EXT_matrix_common #842
  • Added 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 mat4x3 conversion #829
  • Fixed constexpr issue on GCC #832 #865
  • Fixed mix implementation to improve GLSL conformance #866
  • Fixed int8 being defined as unsigned char with some compiler #839
  • Fixed vec1 include #856
  • Ignore .vscode #848

GLM 0.9.9.3

31 Oct 13:31
Compare
Choose a tag to compare

Features:

  • Added equal and 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 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 simplex noise build with double #734
  • Fixed bitfieldInsert according to GLSL spec #818
  • Fixed refract for negative 'k' #808

GLM 0.9.9.2

14 Sep 11:16
Compare
Choose a tag to compare

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

03 Sep 21:25
Compare
Choose a tag to compare

Features:

  • Added bitfieldDeinterleave to GTC_bitfield
  • Added missing equal and notEqual with epsilon for quaternion types to GTC_quaternion
  • Added EXT_matrix_relational: equal and notEqual with epsilon for matrix types
  • Added missing aligned matrix types to 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 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 printf and std::clock_t #778
  • Fixed int mod
  • Anonymous unions require C++ language extensions
  • Fixed 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