875 Commits

Author SHA1 Message Date
Christophe Riccio
e7a5e50fc8 Fixed merge 2013-03-16 18:16:36 +01:00
Christophe Riccio
8ed5f541ff Resolved issue #58 2013-03-16 01:24:29 +01:00
Christophe Riccio
4d71624067 Added file headers so that the files are no longer empty. #57 2013-03-16 01:20:26 +01:00
Christophe Riccio
6c4ae0d241 Fixed space characters 2013-03-10 19:34:21 +01:00
Christophe Riccio
5c44c6e9fc Merge branch '0.9.4' into 0.9.5 2013-02-22 10:49:00 +01:00
Christophe Riccio
f37af51426 Fixed API for euclian, only need a vec2 parameter 2013-02-22 10:17:25 +01:00
Christophe Riccio
982bb5ce5d Added rotation function, issue #22 2013-02-22 01:08:33 +01:00
Christophe Riccio
7b57810a34 Merge branch '0.9.4' into 0.9.5 2013-02-21 22:57:27 +01:00
Christophe Riccio
18a8efde62 Resolve issue #39, exp, squad and intermediate functions 2013-02-21 22:57:14 +01:00
Christophe Riccio
1e3cb00fe5 Completed bit interleaving for 3 and 4 values 2013-02-21 21:35:21 +01:00
Christophe Riccio
3e3736769c Fixed intrinsics build 2013-02-21 11:36:50 +01:00
Christophe Riccio
78118204f6 Merge branch '0.9.4' into 0.9.5 2013-02-20 16:22:07 +01:00
Christophe Riccio
2a4434786e Updated date 2013-02-20 16:21:56 +01:00
Maksim Vorobiev
50c870ea96 Moved all dual quaternion functionality from GTC space to GTX. 2013-02-20 17:57:17 +03:00
Christophe Riccio
bd7125c50b Added bit interleave for 3 and 4 integers 2013-02-10 19:25:11 +01:00
Christophe Riccio
6799127ec6 Fixed any and all for scalars 2013-02-04 19:17:47 +01:00
Christophe Riccio
59b9a780e9 Added GTX_scalar_relational implementation and tests 2013-02-04 19:04:32 +01:00
Christophe Riccio
c57a000791 Added bitfieldInterleave implementation 2013-02-01 23:55:25 +01:00
Christophe Riccio
920ca0a242 Experiments to add bitfieldInterleave 2013-02-01 20:53:32 +01:00
Christophe Riccio
b5607d0018 Fixed merge 2013-01-31 15:01:48 +01:00
Christophe Riccio
a4aa39f9bd Fixed 0x2013 dash character in comments that cause issue in Windows 2013-01-23 02:27:59 +01:00
Christophe Riccio
43a9e450fd Fixed mix for vec4 SSE implementation, issue #33 2013-01-23 02:18:43 +01:00
Christophe Riccio
e7173dd156 Fixed compAdd, issue #40 2013-01-23 00:55:09 +01:00
Dave Reid
7b6fb9f635 Fix GCC warnings. 2012-12-21 10:48:10 +10:00
Dave Reid
18c616528a Add missing implementations of fmat4x4SIMD unary operators. 2012-12-21 08:33:14 +10:00
Dave Reid
c6c8dd15f2 Add missing implementation of fmat4x4SIMD binary operators. 2012-12-21 08:28:34 +10:00
Dave Reid
a4ea111417 Add a new constructor to fmat4x4SIMD that takes a __m128[4]. This is used in a future commit. 2012-12-21 08:19:36 +10:00
Dave Reid
3681cd3523 Add support for doing an identity initialization in the default constructor of fmat4x4SIMD().
This is disabled by default and enabled with GLM_SIMD_ENABLE_DEFAULT_INIT. It makes toggling between SIMD and non-SIMD builds a bit easier.
2012-12-21 07:55:39 +10:00
Dave Reid
efff3add87 Add support for doing a (0.0, 0.0, 0.0, 0.0) initialization in the default constructor of fvec4SIMD().
This is disabled by default, but enabled with GLM_SIMD_ENABLE_DEFAULT_INIT. This makes toggling between SIMD and non-SIMD builds a bit easier.
2012-12-21 07:49:49 +10:00
Dave Reid
87c90590be Add support for x,y,z,w accessors to fvec4SIMD.
This is done via a union. It must be enabled with GLM_SIMD_ENABLE_XYZW_UNION. A nameless struct/union warning in VC (C4201) is explicitly disabled with the "pragma warning(push/pop)" system.

Allowing xyzw access makes it much easier to toggle between SIMD and non-SIMD builds.
2012-12-21 07:40:03 +10:00
Christophe Riccio
0b41846700 Fixed speeling 2012-12-20 11:16:12 +01:00
Christophe Riccio
739ab3529c Resolved issue #4, added GLM_GTX_rotate_normalized_axis 2012-12-14 00:14:02 +01:00
Christophe Riccio
841f91e830 Fixed bug #15, added missing roll, pitch and yaw functions; Fixed half implicit conversions 2012-12-13 22:48:20 +01:00
Christophe Riccio
0b745d4e1c Clean up space characters 2012-11-13 17:57:42 +01:00
Christophe Riccio
7b60ef7ab4 Merge branch 'master' of https://github.com/g-truc/glm into 0.9.4 2012-11-13 17:55:19 +01:00
Christophe Riccio
214c56cd45 Updated doxygen documentation 2012-11-13 17:54:11 +01:00
Christophe Riccio
7778013575 Fixed space characters 2012-11-13 13:19:11 +01:00
boromisp
1683e78f58 Fixed the line-sphere intersection
The original implementation had the same mistakes than the ray-sphere
intersection.
Added two new 'out' parameters to return both intersection ponits.
Changed the implementation to the geomethric method.
2012-11-11 23:53:10 +01:00
boromisp
ed12134f34 Fixed the original ray-sphere intersection
Changed the original analytic method to a geometrical.

The errors in the original intersection calculation:
The function has a sphere center parameter, but ignores it and assumes
that the sphere is in the origo.
It calculates the length of the ray direction vector, but later on uses
this vector as a unit vector.
The position calculation is simply wrong. It multiplies the direction
vector with the radius of the sphere instead of the calculated
intersection distance.

The quadratic equation solving could be improved too:
There should be an early exit for negative discriminant.
The naive implementation sould be changed to a floating-point
specialized one.
2012-11-11 23:41:11 +01:00
boromisp
3a3c1fd8e8 Added new ray-sphere intersection
This version uses a geometric method (usually faster) and doesn't
calculate the intersection position and normal, only the distance.
2012-11-11 23:09:12 +01:00
Christophe Riccio
9d9a625493 Renamed equalEpsilon function into epsilonEqual and added tests 2012-11-05 19:39:22 +01:00
Christophe Riccio
1dda2390e5 Fixed warnings on MacOS X 2012-11-04 14:26:54 +01:00
Christophe Riccio
b1ecabdd28 Fixed GTX_matrix_interpolation, issue #9 2012-09-19 19:14:45 +02:00
Christophe Riccio
c2eea6da26 Removed floor_log2, comment that isnan and isinf are not working on MinGW 2012-09-18 01:52:16 +02:00
Christophe Riccio
a2ba0ea86f Merge branch '0.9.3' of https://github.com/Groovounet/glm into 0.9.4 2012-09-12 15:59:17 +02:00
Joonas Sarajärvi
da530ac46e Fix integer version of glm::log2 for GCC
This pretty much reverts the fix done in commit
1ed0e3865b5de0ee993b064b37749bc85e928d7f

This temporarily breaks log2 for GCC in cases where GLM_FORCE_PURE
is not defined. The workaround introduced in commit
1ed0e3865b5de0ee993b064b37749bc85e928d7f seems to rely
on getting invalid results from the nlz function.

Broken nlz is caused by a broken findMSB function for GCC.

A fix for the findMSB function should be available in a nearby
separate commit.
2012-09-12 01:51:02 +03:00
Christophe Riccio
2f3dd90aca Merge branch '0.9.3' into 0.9.4 2012-09-05 23:45:12 +02:00
Christophe Riccio
09a8d5a621 Fixed warning from #123 comments 2012-07-01 11:32:55 +01:00
Christophe Riccio
40622b0e79 Fixed merge 2012-05-08 21:01:40 +01:00
Christophe Riccio
77eabf703a Merge branch '0.9.3' into 0.9.4 2012-05-02 13:07:06 +01:00