Commit Graph

518 Commits

Author SHA1 Message Date
Recep Aslantas 498a33fac5 fix public header's includes 2018-04-21 22:36:25 +03:00
Recep Aslantas 6202179c23 update version 2018-04-18 22:30:20 +03:00
Recep Aslantas e28cf1d3f6 remove unused variable 2018-04-18 15:23:07 +03:00
Recep Aslantas 63966ee5c0 quat: use the new "glm_mul_rot" for quaternion
* this should be faster than mat4_mul
2018-04-18 15:16:24 +03:00
Recep Aslantas 065f93ab3c update docs, drop scale1 2018-04-18 14:30:44 +03:00
Recep Aslantas 4dbcd28fdb use mul_rot for rotations to make thrm faster 2018-04-18 14:12:56 +03:00
Recep Aslantas be0e3fc9f2 new matrix multiplication helper for rotation matrices 2018-04-18 14:05:09 +03:00
Recep Aslantas d648f5772d affine: drop rotate_ndc functions 2018-04-18 10:57:35 +03:00
Recep Aslantas f163fcd043 simd: load vec3 helpers for sse/sse2 2018-04-18 00:00:47 +03:00
Recep Aslantas 27ab6a7dd0 update docs, add clarifications for affine transforms 2018-04-17 15:42:24 +03:00
Recep Aslantas 33e951fe2e implement rotate_at for quat and provide make version 2018-04-17 12:17:04 +03:00
Recep Aslantas c63c6c90ac implement rotate_at 2018-04-17 11:12:18 +03:00
Recep Aslantas a2792178db add missing call funcs for affine transforms 2018-04-17 11:07:57 +03:00
Recep Aslantas f0a27d0ce2 now working on v0.4.2 2018-04-15 20:46:46 +03:00
Recep Aslantas 826ddf0f5b improve normalize vectors 2018-04-15 12:46:29 +03:00
Recep Aslantas b09b5f260b vec: fix rotate vector using mat4 and mat3 rotation matrices 2018-04-15 12:44:50 +03:00
Recep Aslantas 59aacee968 optimize clamp for vec4 2018-04-14 12:49:37 +03:00
Recep Aslantas 429aff087f optimize min and max for vec4 2018-04-14 11:35:28 +03:00
Recep Aslantas ca9f61dd74 Merge pull request #44 from recp/vector
new vector functions and optimizations
2018-04-14 09:19:51 +03:00
Recep Aslantas d6395d4fb8 vec: optimize rotate vector using matrix
* add mat3 version
2018-04-13 22:33:32 +03:00
Recep Aslantas 7f7007574b vec: implement muladd's scalar version 2018-04-13 22:30:44 +03:00
Recep Aslantas 13345f06c1 fix vec4 scalar ops 2018-04-13 15:50:05 +03:00
Recep Aslantas 725fac75d0 now working on v0.4.1 2018-04-13 15:47:45 +03:00
Recep Aslantas c05f58a169 vec: add addadd, subadd and muladd helpers 2018-04-13 15:46:43 +03:00
Recep Aslantas d841f8809d vec: add some new functions for vector
* _mul: multiply two vector (replacement for _mulv)
* _div: div two vector
* _divs: div vector with scalar
* adds: add scalar to each components of vec
* subs: sub scalar from each components of vec
2018-04-13 15:12:56 +03:00
Recep Aslantas af5a2627b4 fix scale_as for zero length vector
* return zero if vector length is zero
2018-04-13 11:57:34 +03:00
Recep Aslantas 25fc3d0284 vec: add one and zero helpers for vectors 2018-04-13 11:57:14 +03:00
Recep Aslantas c489955b00 add simd norm helper 2018-04-13 11:39:14 +03:00
Recep Aslantas 79f8b1ebf8 vec4: optimize vec4 norm and norm2 2018-04-13 11:18:42 +03:00
Recep Aslantas 0eb37da8bb vec4: optimize vec4 normalize with SIMD 2018-04-13 11:01:07 +03:00
Recep Aslantas 2d77123999 quat: fix quaternion inverse and tests about it
* multiplication quaternion and its inverse must be identity
2018-04-11 16:50:37 +03:00
Recep Aslantas 9ae8da3e0a update version to v0.4.0 2018-04-11 12:36:39 +03:00
Recep Aslantas 0e63c245d4 update docs 2018-04-11 12:34:20 +03:00
Recep Aslantas de55850136 add call version of vector extensions 2018-04-11 12:31:29 +03:00
Recep Aslantas 51278b26b4 quat: update call versions of quaternion 2018-04-11 11:19:13 +03:00
Recep Aslantas fdea13507b replace mat4_mulq with glm_quat_rotate
* glm_quat_rotate is better name to rotate transform matrix using quaternion.
* we may use mat4_mulq in the future for another purpose e.g. left multiplication quat with matrix
2018-04-11 10:49:53 +03:00
Recep Aslantas 80d255e6d9 rotate vector using quaternion 2018-04-11 00:47:11 +03:00
Recep Aslantas d447876c70 improve glm_vec_rotate 2018-04-11 00:46:23 +03:00
Recep Aslantas b1fa7ff597 normalize axis quaternion axis-angle constructor 2018-04-11 00:36:39 +03:00
Recep Aslantas 010dcc9837 optimize normalize quaternion with SIMD
* provide _to version for storing into another quat
2018-04-11 00:17:41 +03:00
Recep Aslantas 18ef0d7af1 quat: quaternion for look rotation ( from source point to dest point ) 2018-04-10 16:52:52 +03:00
Recep Aslantas 9466182c10 quat: create view wmatrix with quaternion helper 2018-04-10 16:01:23 +03:00
Recep Aslantas f0a51b35ad quat: transposed/inverted version of quat2mat 2018-04-10 15:41:09 +03:00
Recep Aslantas 290bcf134c quat: add lerp and improve slerp 2018-04-10 12:38:54 +03:00
Recep Aslantas 416e2f4452 vec: lerp for vec3 and vec4 2018-04-10 11:44:16 +03:00
Recep Aslantas 1fb82a1922 quat: use vector functions for available operations
* provide quat_copy function
2018-04-10 10:47:55 +03:00
Recep Aslantas 591c881376 vec: extend flip sign to store result in another vector 2018-04-10 10:46:45 +03:00
Recep Aslantas 6f69da361b quaternion multiplication
* convert quaternion multiplication to xyzw
* previous implementation may be wrong, wikipedia version implemented
* implement SSE version
2018-04-09 23:56:09 +03:00
Recep Aslantas 93a08fce17 quat: axis angle of quaternion 2018-04-09 23:12:44 +03:00
Recep Aslantas cc1d3b53ea quat: implement add, sub, real and imag helpers 2018-04-09 22:32:55 +03:00