Commit Graph

382 Commits

Author SHA1 Message Date
Christophe
0d52d5ddab Fix master build 2023-12-21 18:14:20 +01:00
Christophe
edecbf1c59 Revert "Add support for non aligned SIMD for vec4"
This reverts commit 4e01e940de.
2023-12-20 22:33:20 +01:00
Christophe
2d38c41161 Fixes for tests build 2023-12-20 22:33:20 +01:00
Laurent Caumont
1b0f61e285 Add support for non aligned SIMD for vec4
It is used as default configuration for Visual Studio 64 bits compilation (needs Language Extension).
code changes:
- add new qualifiers:
  unaligned_simd_highp
  unaligned_simd_mediump
  unaligned_simd_lowp
- add use_simd and replace is_aligned
(code for ARM NEON is added but not tested)
2023-11-08 09:30:26 +01:00
Christophe
db0f79de12
Merge pull request #1137 from tetrisplusplus/fix_glm_gtx_matrix_query_isOrthogonal
fix: isOrthogonal for a zero matrix #1137
2023-08-18 15:04:55 +02:00
Christophe
99fe1c8f7d
Merge pull request #1142 from thp/recompose
gtx_matrix_decompose: Add glm::recompose() #1142
2023-08-18 14:55:41 +02:00
Mark Sheppard
3cb568cd37 Fix Clang 15 test build errors
Fixes for compiler errors when building the tests using Clang 15,
including:

    * Use explicit cast to silence Wimplicit-int-float-conversion
      warning for conversion of spin count in implementation of
      glm::slerp.
    * Use GLM_FORCE_MESSAGES instead of removed GLM_MESSAGES for
      messages in glm/gtx/hash.hpp, avoiding Wundef warning.
    * Encode en dash in URL for Gram-Schmit Process wikipedia page and
      replace similar en dashes in comments with regular dashes, to
      avoid Winvalid-utf8 warnings in glm/gtx/matrix_factorisation.inl.
    * Replace degree sign symbol with text "degrees" to avoid
      Winvalid-utf8 warnings in test/gtc/gtc_quaternion.cpp.
    * When using Clang, build tests with -Wno-float-equal to silence
      Wfloat-equal warning in implementation of glm::vec<L,T,Q>::equal.
    * For performance tests in test/gtx/gtx_fast_trigonometry.cpp, add
      statement explicitly casting result to void, to silence
      Wunused-but-set-variable warnings.
    * Add newline at end of test/gtx/gtx_hash.cpp to silence
      Wnewline-eof warning.
    * Rename namespace _1aga to agarose in test/gtx/gtx_pca.cpp to
      avoid Wreserved-identifier warning.
2023-03-31 17:39:53 +01:00
Thomas Perl
4afe953bff gtx_matrix_decompose: Add glm::recompose() 2023-02-26 18:33:47 +01:00
tetrisplusplus
2af53d5981 Added test_isOrthogonal for zero matrix 2023-01-23 21:05:35 +09:00
Charles Huber
4b6284e39d GCC: Fix noexcept warnings on hash functions
Fix warnings on hash functions with GCC and -Wnoexcept:
* Add GLM_HAS_NOEXCEPT flag & GLM_NOEXCEPT #define to setup.hpp.
* Add GLM_NOEXCEPT to hash functions in hash.hpp.
* Add GLM_NOEXCEPT to matrix operator[] accessors.
* Add gtx_hash.cpp and a test to verify all hash overloads compile.
  Configure with -DCMAKE_CXX_FLAGS="-Werror -Wnoexcept" to test.
2022-08-24 15:21:11 -05:00
SGrottel
104c1214ee Avoid fp comparison of glm::sign return value by introducing a sign comparison helper function 2021-06-05 16:43:47 +02:00
SGrottel
5dbba35275 Changed test functions to explicitly define comparison epsilons.
Updated 1aga expected computation results, based on external experiment based on precise / symbolic computation
Unified result comparison to always use `vectorEpsilonEqual` or `matrixEpsilonEqual`
2021-06-05 16:30:40 +02:00
SGrottel
d71dba9603 Introduced a second, less precise comparison epsilon for the tests for now. 2021-05-11 07:44:40 +02:00
SGrottel
18d9b97aa4 Further increased comparison float epsilon, and further test batch testEigenvectors also failes.
Added debug output to `testEigenvectors` in case the error persists.
2021-05-10 23:36:17 +02:00
SGrottel
593b7cc36b Increased float comparison epsilon to pass tests. 2021-05-10 22:49:57 +02:00
SGrottel
a0ccbcc63d Added further details on the comparison issue with covariance matrices on some VMs.
Also corrected some code style guide, and changed `nullptr` to `GLM_NULLPTR` for better compatibility.
Tests are now executed in blocks of related tests, and only inbetween blocks the tests will exit.
2021-05-10 21:32:01 +02:00
SGrottel
d0d7945141 Additional debug output to investigate why test-gtx_pca fails on some VMs on Travis.
Also, reworked the `#if` about CXX11; did not seem to work correctly.
2021-05-10 19:35:57 +02:00
SGrottel
c792a0a221 Disabled tests requiring random engine when CXX11 STL is not available.
Added missed `typename` keywords, and fixed variable initialization.
2021-05-10 17:48:35 +02:00
SGrottel
0f5b544d5d Corrected errors on Xcode C++98 pure related to language extensions accidentially used. 2021-05-10 16:38:38 +02:00
SGrottel
b8adc27808 Removed lambdas and initializer list ctors to be compatible with older cpp standards. 2021-05-10 15:45:42 +02:00
SGrottel
dd40903b74 Implemented 'principle component analysis' utility in gtx, including tests 2021-05-10 13:14:29 +02:00
Sergey Krivohatskiy
b5d4757580 compilation fix
Signed-off-by: Sergey Krivohatskiy <s.krivohatskiy@gmail.com>
2021-03-23 15:22:16 +03:00
Sergey Krivohatskiy
e81a9c4baa compilation fixes
Signed-off-by: Sergey Krivohatskiy <s.krivohatskiy@gmail.com>
2021-03-23 15:03:38 +03:00
Sergey Krivohatskiy
2010c883d5 formatting fix
Signed-off-by: Sergey Krivohatskiy <s.krivohatskiy@gmail.com>
2021-03-23 14:33:11 +03:00
Sergey Krivohatskiy
2b766d5303 a few more tests for axisAngle
Signed-off-by: Sergey Krivohatskiy <s.krivohatskiy@gmail.com>
2021-03-23 14:30:52 +03:00
Sergey Krivohatskiy
57c3be0b9f Added axisAngle tests
Signed-off-by: Sergey Krivohatskiy <s.krivohatskiy@gmail.com>
2021-03-23 14:24:41 +03:00
nowakowsk
eabaf2338b Fixed unit tests for pre-C++11 compilers 2021-02-14 13:03:57 +01:00
nowakowsk
6437133cd2 fix: add missing transposition to adjugate for mat2 and mat4 2021-02-14 12:14:59 +01:00
Christophe Riccio
a4bf8867c2 Added clamp, repeat, mirrorClamp and mirrorRepeat function to GLM_EXT_scalar_commond and GLM_EXT_vector_commond extensions with tests 2020-02-11 12:53:12 +01:00
Christophe Riccio
436579b37e Fixed Wimplicit-int-float-conversion warnings with clang 10+ #986 2020-01-05 15:13:20 +01:00
Khem Raj
d2b9bbb911 Fix Wimplicit-int-float-conversion warnings with clang 10+
This is a new warning in clang which will be available in clang 10
onwards

Fixes
error: implicit conversion from 'const int' to 'float' may lose precision [-Werror,-Wimplicit-int-float-conversion]
2019-12-27 18:44:52 -08:00
Stefan Maass
e7d51a3838 bugfix intersection ray/plane, added related tests 2019-09-14 23:38:44 +02:00
Sebastian Buchwald
7b06a984af Let test return the number of errors 2019-09-11 19:12:39 +02:00
Christophe Riccio
61b2a73e21 Fixed missing std:: namespace #898 2019-09-07 13:41:08 +02:00
Liam
2c3bdccb01
Merge branch 'master' into lMaxNorm-proposal 2019-08-25 09:03:13 +01:00
Liam Adams
a78024d2bf Add testing of lMaxNorm. 2019-07-20 08:02:09 +01:00
Liam Adams
8f7d378116 Add testing of lxNorm. 2019-07-20 07:36:02 +01:00
Christophe
947527d3ac Fixed string_cast, broken after fixing #916 2019-07-12 23:11:27 +02:00
Christophe
3a65b7a628 Completed EXT_*_integer extensions 2019-07-12 18:46:08 +02:00
Khem Raj
1150952697 glm: Remove redundant double semi-colons
Make clang happy
/glm/gtc/../ext/../detail/../simd/common.h:106:45: error: empty expression statement has no effect; remove unnecessary ';' to silence this warning [-Werror,-Wextra-semi-stmt]
|         glm_vec4 const or0 = _mm_or_ps(and0, and1);;
|                                                    ^
| 1 error generated.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-03-01 11:13:28 -08:00
Christophe Riccio
81d626daf6 Added test for #764 2018-09-27 21:22:07 +02:00
Groove
72bf05e06e Clean up detection 2018-08-18 13:58:30 +02:00
Christophe Riccio
c4ed4ed0c7 Added EXT_scalar_common, EXT_vector_common and EXT_quaternion_exponential extensions 2018-08-15 18:54:04 +02:00
Christophe Riccio
6d34ae4c5e Refactor EXT headers 2018-08-07 18:41:41 +02:00
Christophe Riccio
26be7bda82 Fixed build 2018-08-07 14:46:56 +02:00
Christophe Riccio
8c9d16d868 Added quaternion EXT extensions 2018-08-07 13:55:13 +02:00
Christophe Riccio
310b8405c9 Refactor split headers as extension files 2018-08-07 10:46:09 +02:00
Christophe Riccio
7086d902e2 Fixed relational code, reduced header dependencies 2018-08-05 18:24:22 +02:00
Christophe Riccio
78879c675c Refactor headers 2018-08-05 15:22:49 +02:00
Christophe Riccio
1092810f2f Fixed build 2018-08-02 18:30:46 +02:00