Commit Graph

353 Commits

Author SHA1 Message Date
John McFarlane
506a487d24 parameterize number of dimensions of vector in tvec<D, T, P>
- specializes for 1, 2, 3 and 4-dimensional vector types
  which are then aliased as tvec1, tvec2, tvec3 and tvec4
- requires C++11 aliases; breaks compatability with C++03
- tested on:
  - clang-3.5.2, clang-3.8.0
  - gcc 4.8.5, gcc 5.4.1, gcc 6.2.0

TODO:
- still uses template template parameters - most can probably be removed
- some definitions might now be de-duplicated
2016-12-28 17:07:12 -08:00
Christophe Riccio
29f600dfbb Fixed warnings 2016-11-25 00:37:32 +01:00
Christophe Riccio
c7e81fb3f7 Merge branch '0.9.8' 2016-11-20 23:04:25 +01:00
Christophe Riccio
9755dea062 Quicker unit tests 2016-11-20 23:02:20 +01:00
Christophe Riccio
1253c6a218 Removed debut code 2016-11-20 21:51:09 +01:00
Christophe Riccio
d4019aab40 Moved color_encoding to experimental 2016-11-20 21:50:12 +01:00
Christophe Riccio
157b4ffbf8 Merge GLM 0.9.8 branch 2016-11-20 21:01:12 +01:00
Christophe Riccio
37e7b6d649 Graft fix for issue 212 2016-11-20 20:54:55 +01:00
Christophe Riccio
7b78138409 Removed debug code 2016-11-20 20:29:21 +01:00
Christophe Riccio
c8e7962fa2 Fixed GTC_packing test on GCC and GLM_ARCH_PURE #577 2016-11-20 20:20:11 +01:00
Christophe Riccio
32cfecba97 Optimized GTC_packing implementation 2016-11-20 19:54:03 +01:00
Christophe Riccio
3cc726c7a4 Trying to figure out what cause the GCC 32bit fail 2016-11-20 18:55:07 +01:00
Christophe Riccio
f26f21fd9d Trying to figure out what cause the GCC 32bit fail 2016-11-20 18:41:46 +01:00
Christophe Riccio
1349bd5555 Trying to figure out what cause the GCC 32bit fail 2016-11-20 18:12:45 +01:00
Christophe Riccio
eb336d64f1 Trying to figure out what cause the GCC 32bit fail 2016-11-20 18:01:05 +01:00
Christophe Riccio
b3cbed5a1e Trying to figure out what cause the GCC 32bit fail 2016-11-20 17:58:45 +01:00
Christophe Riccio
b08d8b95bd Trying to figure out what cause the GCC 32bit fail 2016-11-20 17:43:51 +01:00
Christophe Riccio
c4666ea14c Trying to figure out what cause the GCC 32bit fail 2016-11-20 17:35:13 +01:00
Christophe Riccio
dffcb04e60 Trying to figure out what cause the GCC 32bit fail 2016-11-20 17:25:54 +01:00
Christophe Riccio
1c17d9a27f Trying to figure out what cause the GCC 32bit fail 2016-11-20 17:17:08 +01:00
Christophe Riccio
8bd73b2a3a Trying to figure out what cause the GCC 32bit fail 2016-11-20 17:02:46 +01:00
Christophe Riccio
8b160c0201 It looks like GLM has a but that travis CI shows in this configuration #577 2016-11-19 22:43:02 +01:00
Christophe Riccio
a3427f7027 Fixed build system error 2016-11-19 19:59:47 +01:00
Christophe Riccio
7e4007d427 Updated GLI version used in GLM tests 2016-11-18 23:16:29 +01:00
Christophe Riccio
6482dd29d2 Added GLM_ENABLE_EXPERIMENTAL 2016-11-12 14:19:22 +01:00
Christophe Riccio
44a981ea68 Merge 0.9.8 2016-11-01 09:16:29 +01:00
Christophe Riccio
c4f52dc98f Added test for quat type component length() static #565 2016-11-01 09:14:28 +01:00
Christophe Riccio
a2684a8fe5 - Added lowp variant of GTC_colorspace convertLinearToSRGB #419 2016-10-16 20:17:29 +02:00
Christophe Riccio
e4c559b29b Added RGBM encoding in GTC_packing #420 2016-10-16 16:40:49 +02:00
Christophe Riccio
09a81dad23 Merge branch '0.9.8' 2016-10-12 21:40:15 +02:00
Christophe Riccio
1c85265f97 Added Visual C++ 15 detection, Added Clang 4.0 detection, Refactored GLM_COMPILER_VC values 2016-10-12 21:40:03 +02:00
Christophe Riccio
7d73a5d320 Fixed test 2016-09-11 13:32:51 +02:00
Christophe Riccio
8a54ba3462 Added GTC_color_encoding 2016-09-11 02:50:08 +02:00
Christophe Riccio
a609a0fea6 - Added more information to build messages 2016-09-02 00:30:37 +02:00
Christophe Riccio
f71171d49b Fixed 32-bits build #528 #529, fixed VC 32 bits crash 2016-08-07 12:43:38 +02:00
Christophe Riccio
8c8c8367e3 Improved aligned types support 2016-07-17 03:37:24 +02:00
Christophe Riccio
b3d57f2cc9 Improved aligned types support 2016-07-17 03:06:58 +02:00
Christophe Riccio
eb20cdc6ae Added precision qualifier tests 2016-07-17 02:17:25 +02:00
Christophe Riccio
b8b43e6a4d Added GTC_functions extension 2016-07-14 15:20:44 +02:00
Christophe Riccio
0e1e181484 Clean up 2016-06-10 23:14:17 +02:00
Christophe Riccio
4155e5b820 Workaround GCC build with GLM_FORCE_PURE defined 2016-06-02 02:54:05 +02:00
Christophe Riccio
731a263325 Fixed bitcount build errors 2016-06-02 02:32:54 +02:00
Christophe Riccio
5fdca07eee Clean up 2016-06-02 01:01:36 +02:00
Christophe Riccio
fd4ada5843 Support aligned *vec* even when SIMD isn't enabled 2016-06-02 00:33:55 +02:00
Christophe Riccio
41984e42ab Added GTC_type_aligned with aligned *vec* types 2016-06-01 00:43:35 +02:00
Christophe Riccio
7fe2f5fe65 Renamed instruction set flags 2016-05-28 19:26:59 +02:00
Christophe Riccio
d33e3df02a Fixed SIMD code path selection 2016-05-28 18:24:39 +02:00
Christophe Riccio
ab159770b3 mad optimizations, fixed build 2016-05-28 17:12:48 +02:00
Christophe Riccio
1becd76c5f Fixed build 2016-05-01 12:39:16 +02:00
Christophe Riccio
5f05a5e953 Clean up inverse SSE code 2016-05-01 03:42:47 +02:00
Christophe Riccio
b3cae39ea6 Merge 0.9.7 2016-04-29 17:37:27 +02:00
Christophe Riccio
234d7d4ba9 Simplify code removing GLM_FORCE_SIZE_FUNC, GLM_META_PROG_HELPERS, GLM_STATIC_CONST_MEMBERS and 'type' type trait. Added experiments for GTX_type_trait 2016-03-13 12:56:26 +01:00
Christophe Riccio
86c58b8b8b Added iround and uround to GTC_integer, fast round on positive values 2016-03-10 21:53:08 +01:00
Christophe Riccio
52d05aee76 Fixed build 2016-03-10 21:24:37 +01:00
Christophe Riccio
c853df1638 Added uround to GTC_integer, fast round on positive values 2016-03-10 21:17:46 +01:00
Christophe Riccio
5fad3f437d Added more tests for ceilMultiple 2016-03-02 21:44:59 +01:00
Christophe Riccio
57316860a1 Fixed ceilMultiple test 2016-03-02 21:42:13 +01:00
Christophe Riccio
c6aa981e2a Added ceilMultiple test with integers 2016-03-02 21:32:44 +01:00
Christophe Riccio
a257beb5de Added missing bvec* && and || operators 2015-10-15 04:28:08 +02:00
Christophe Riccio
560dcdbec0 Added 8bit pack and unpack to GTC_packing 2015-10-12 01:03:01 +02:00
Christophe Riccio
bb9ce516b0 Added 16bit pack and unpack to GTC_packing 2015-10-11 23:02:42 +02:00
Christophe Riccio
04c8f05a34 Added (un)packUnorm and (un)packSnorm to GTC_packing 2015-10-10 03:04:32 +02:00
Christophe Riccio
65c8f8fcf0 Added (un)packHalf 2015-10-10 01:54:54 +02:00
Christophe Riccio
33e3243779 Fixed affineInverse test #192 2015-10-01 23:25:21 +02:00
Christophe Riccio
ab0312be02 Added tests for affineInverse #192 2015-10-01 01:30:13 +02:00
Christophe Riccio
a77d311119 Added packF3x9_E1x5 and unpackF3x9_E1x5 to GTC_packing for RGB9E5 #416 2015-10-01 00:43:37 +02:00
Christophe Riccio
cb5a2a86ca Fixed GTC_packing unpackUnorm3x10_1x2 #414 2015-09-28 23:47:40 +02:00
Sebastian Rettenberger
fa6fd748c0 Add test for floorMultiple/ceilMultiple (float only) 2015-09-23 12:03:44 +02:00
Christophe Riccio
47c77475a9 - Improved overall execution time of unit tests #396 2015-09-06 22:22:20 +02:00
Christophe Riccio
5437d49cf2 Renamed GTC_color to GTC_color_space 2015-08-01 21:55:28 +02:00
Christophe R.
37d4ca9c4c Merge pull request #368 from JesseTG/jtg/oops-sorry
Fixed some of my own metaprogramming-helper mistakes #368
2015-07-25 23:28:38 +02:00
Christophe Riccio
afa193704c Fixed interactions with GLM_FORCE_NO_CTOR_INIT and default functions #366 2015-07-25 23:23:59 +02:00
Christophe Riccio
a56a40e1f2 Added support of defaulted functions to GLM types, to use them in unions #366 2015-07-25 21:31:51 +02:00
Jesse Talavera-Greenberg
2a947b7ff1 Add GLM_META_PROG_HELPERS tests to each type
- Add new tests to the matrix types
- Add vector tests to use the static values instead of constants
- Wrap the quaternion tests in #ifdefs
- Add new tests to the simdMat4 and simdVec4 tests
2015-07-25 14:33:01 -04:00
Christophe Riccio
c90f7b0973 Fixed build 2015-07-19 01:04:07 +02:00
Christophe Riccio
47deb9709c Merge pull request #350 from JesseTG/jtg/template-convenience
Add static components and prec members to all vector and quat types #350
2015-07-18 23:49:29 +02:00
Christophe Riccio
357eaf7071 Fixed warnings 2015-07-18 10:00:00 +02:00
Jesse Talavera-Greenberg
a9c26d065b Add static components and prec members to all vector and quaternion types 2015-07-03 14:57:46 -04:00
Christophe Riccio
08eedc6209 Added experiment for new fastCos. More sRGB tests. 2015-06-27 18:36:17 +02:00
Christophe Riccio
099bef4d16 Fixed GCC build 2015-05-01 14:48:55 +02:00
Christophe Riccio
a472f50767 Fixed C++98 build 2015-05-01 14:13:48 +02:00
Christophe Riccio
042270d049 Added 'fmod' overload to GTX_common with tests, Removed integer specification for 'mod' in GTC_integer #308 2015-02-15 12:38:23 +01:00
Christophe Riccio
387df50459 Updated GTC_color 2015-02-12 21:21:50 +01:00
Christophe Riccio
40d0bc2e85 Added GTC_color, rgbToSrgb and srgbToRgb with tests 2015-02-10 23:49:49 +01:00
Christophe Riccio
d9290d7887 Fixed GTC_packing *pack*norm*x* build and added tests #292 2015-01-09 23:14:10 +01:00
Christophe Riccio
fc8b4404f0 Fixed faceforward build #289 2014-12-19 23:54:25 +01:00
Christophe Riccio
e1a9702097 Fixed GTC_integer test 2014-12-04 22:47:30 +01:00
Christophe Riccio
bd2601f12a Removed warnings 2014-12-04 00:27:49 +01:00
Christophe Riccio
09083fef05 Added more log2 tests 2014-12-02 20:48:26 +01:00
Christophe Riccio
a42f84ed47 Removed GLM_TEST_ENABLE_PERF 2014-11-29 20:46:58 +01:00
Christophe Riccio
7e81213fdd Fixed mod function specialization #281 Fixed bitscan detection 2014-11-29 18:47:58 +01:00
Christophe Riccio
3f48ffefb0 Updated license 2014-11-26 00:27:12 +01:00
Christophe Riccio
e8fbcf76dd Optimizations of log2 for ivec4 2014-11-24 01:56:36 +01:00
Christophe Riccio
7621a735a3 Move GTC_type_aligned to GTX extensions 2014-11-23 20:58:09 +01:00
Christophe Riccio
c79394b899 More tests and comments for type_aligned 2014-11-23 20:44:54 +01:00
Christophe Riccio
9b96b31f0e Fixed alignment on Visual C++ 2014-11-23 13:20:14 +01:00
Christophe Riccio
b062bd9ff2 First step to add GTC_type_aligned 2014-11-23 01:02:03 +01:00
Christophe Riccio
88894045af Added integer log2 test 2014-11-19 00:40:45 +01:00
Christophe Riccio
2d50df61c3 Initial structure for GTC_integer 2014-11-17 23:56:41 +01:00
Christophe Riccio
bc5fe52a44 Removed empty GTC_integer 2014-11-16 16:42:47 +01:00
Christophe Riccio
b90c4c430e Added GLM_HAS_TRIVIAL_QUERIES define 2014-11-15 21:59:46 +01:00
Christophe Riccio
5960196ce8 Clean up white spaces, fix build with VC15 2014-11-15 20:36:53 +01:00
Christophe Riccio
141c1856a7 Removed <iostream> in GLM tests, use <cstdio> instead 2014-11-15 00:49:12 +01:00
Christophe Riccio
16a0c960f7 Move more performance tests inside GLM_PERF_ENABLE 2014-11-15 00:20:56 +01:00
Christophe Riccio
0b8ca1a5b6 Added a CMake option to execute GLM performance tests. Made quat and dualquat trivially constructible #263 2014-11-15 00:05:52 +01:00
Christophe Riccio
c36f3630eb Fixed glm::mask function and tests 2014-11-14 02:01:46 +01:00
Christophe Riccio
a604ebdaa5 Fixed build 2014-11-13 00:08:13 +01:00
Christophe Riccio
2df3bf71cc Merge branch 'trivial' into bitfield 2014-11-12 23:11:32 +01:00
Christophe Riccio
062ee19ac7 Fixed bitfieldInsert and bitfieldExtract 2014-11-12 22:48:15 +01:00
Christophe Riccio
6f3765d281 First draft of GTC_round 2014-11-04 00:06:20 +01:00
Christophe Riccio
41c00872a1 Fixed GCC build 2014-11-01 23:35:10 +01:00
Christophe Riccio
abb5299e08 Fixed warnings with -pedantic 2014-10-29 10:28:25 +01:00
Christophe Riccio
dced21e745 Added multiple 'sign' implementations for integers, unit tests and performancetests. 2014-10-29 00:18:41 +01:00
Christophe Riccio
44382faf59 Improve mask implementation to support any integer and vector types 2014-10-28 20:28:26 +01:00
Christophe Riccio
a88d8935be Updated ceilPowerOfTwo for signed int support 2014-10-27 23:02:47 +01:00
Christophe Riccio
3420d691f5 Added findLSB tests, faster ceilPowerOfTwo 2014-10-27 20:47:00 +01:00
Christophe Riccio
f09d1fd3d4 Fix build 2014-10-27 13:44:30 +01:00
Christophe Riccio
097c1f7b90 Updated GTC_integer 2014-10-26 20:34:10 +01:00
Christophe Riccio
d3b368b65c Added GTC_integer, deprecated GTX_bit 2014-10-26 19:22:19 +01:00
Christophe Riccio
087d6292e3 Added GTC_bitfield extension, promoted GTX_bit 2014-10-26 00:22:08 +02:00
Christophe Riccio
c2d542562e Fixed GLM_FORCE_SIZE_FUNC support overlook #245. Added uninitiallized constructor to quaternion. Fixed lack of conscistency or quaternion constructors with other types. Various uninitilized constructor optimizations 2014-10-12 01:24:28 +02:00
Christophe Riccio
bfa893b957 Fixed signed integer and float linearRand results #230 2014-09-07 00:57:21 +02:00
Christophe Riccio
5f7862ebec Improved linearRand: support precision and integers (#230) 2014-09-06 21:52:51 +02:00
Christophe Riccio
2b747cbbad Removed last references to GLM_FORCE_RADIANS 2014-08-04 00:10:12 +02:00
Christophe Riccio
d722b398c9 Added scalar conversion constructor 2014-07-28 22:08:09 +02:00
Christophe Riccio
9f0fe30585 Fixed build 2014-06-21 13:22:06 +02:00
Christophe Riccio
7097e4c7c8 Fixed tweakedInfinitePerspective #208 and added user-defined epsilon to tweakedInfinitePerspective 2014-06-20 22:13:06 +02:00
Christophe Riccio
83f594b5ed Fixed quaternion mul/vec test 2014-06-19 23:05:35 +02:00
Christophe Riccio
a1a861a4a6 Merge pull request #210 from moushkka/0.9.5
Fixed linear interpolation when cosTheta is close to 1 in quaternion slerp #210
2014-06-12 19:27:22 +02:00
Christophe Riccio
c506b43d49 Quaternion vector rotation error. #209 2014-06-12 00:29:56 +02:00
Joel Nises
e610e9446e fixed bug in quaternion slerp 2014-06-05 17:48:53 +02:00
Christophe Riccio
31ec3eed97 Clean up initializer list code. 2014-02-08 19:08:09 +01:00
Christophe Riccio
aeba3c6fe7 Quiet most GLM_FORCE_RADIANS messages 2014-01-11 21:12:53 +01:00
Christophe Riccio
ccb25c84c7 Update copyright year 2014-01-04 22:32:28 +01:00
Christophe Riccio
aa26672da1 Fixed inverse link error when using namespace glm; (#147) 2014-01-04 16:34:11 +01:00
Christophe Riccio
6f096fbb31 Fixed vector and matrix queries 2014-01-04 14:57:59 +01:00
Christophe Riccio
06ac77dad4 Fixed declaration and definision mismatches (#148) 2014-01-04 13:55:37 +01:00
Christophe Riccio
40c772341a Fixed white space 2013-12-27 01:30:19 +01:00
Christophe Riccio
d252dd243b Added possible static_cast conversion of GLM types (#72) 2013-12-27 00:49:53 +01:00
Christophe Riccio
9f8112f93a Reduced dependencies of GTX extensions. Removed some deprecated code. 2013-12-25 04:16:08 +01:00
jan p springer
e299af614f added: quat::op+=(quat) and quat::op*=(quat) 2013-11-22 21:46:30 +00:00
Christophe Riccio
71855943e0 Added initializer lists 2013-09-29 19:44:59 +02:00
Christophe Riccio
5d7c896a3f Fixed build on Visual C++ 2005 2013-09-24 01:21:55 +02:00
Christophe Riccio
61589b8a28 Added a GTX_euler_angle unit test 2013-09-18 23:05:50 +02:00
Christophe Riccio
08ada74f36 More precise C++ features detection 2013-09-11 01:06:11 +02:00
Christophe Riccio
b9266c07b0 Using C++ casts 2013-09-08 00:22:17 +02:00
Christophe Riccio
f511121559 Merge nohalf 2013-09-06 02:17:09 +02:00
Christophe Riccio
e413381fad Merge 2013-09-06 02:14:15 +02:00
Christophe Riccio
16b9c79acc Added implicit conversion of types with different precision qualifier 2013-09-02 00:16:41 +02:00
Christophe Riccio
635d2d0eca Fixed GTC_packing build 2013-09-01 18:22:47 +02:00