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
5dec68823c
add additional tests and comments to quat tests
2018-04-10 17:41:25 +03:00
Recep Aslantas
4c79fee5d3
quat: additional tests for angle, axis, mul (hamilton product)
2018-04-10 17:16:31 +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
Recep Aslantas
b21df8fc37
inverse of quaternion
2018-04-09 22:26:23 +03:00
Recep Aslantas
76e9f74020
conjugate of quaternion
2018-04-09 21:54:53 +03:00
Recep Aslantas
d79e58486d
update credits file
2018-04-09 21:54:35 +03:00
Recep Aslantas
3dc93c56e8
convert quaterinon to xyzw order (part 1)
2018-04-09 18:49:12 +03:00
Recep Aslantas
7615f785ac
improve quaternion to matrix
2018-04-09 00:53:14 +03:00
Recep Aslantas
f0daaca58b
improve matrix to quaternion
2018-04-09 00:46:00 +03:00
Recep Aslantas
381b2fdcc0
fix vec4_norm2, use dot for vec3_norm2
2018-04-09 00:01:56 +03:00
Recep Aslantas
e4e0fa623c
sse2 version of vec4 dot product
...
* use this for normalizing vector
2018-04-08 18:27:54 +03:00
Recep Aslantas
932f638d5a
optimize mat4 to quaternion
...
* add SSE2 version and optimize scalar version
2018-04-08 12:31:32 +03:00
Recep Aslantas
81bda7439d
vector square root
2018-04-08 12:30:15 +03:00
Recep Aslantas
b27603c268
normalize quaternion before converting to matrix
...
* because it must be unit quaternion and didn't specified this in docs.
* we must provide alternative func for unit quat
2018-04-08 00:09:40 +03:00
Recep Aslantas
12c5307447
vec3 and vec4 sign helper
2018-04-07 21:53:22 +03:00
Recep Aslantas
257c57d41f
mat4 to quaternion
2018-04-07 19:46:46 +03:00
Recep Aslantas
f5140ea005
quat: mat4_mul_quat helper
...
* the quaternion is used as right matrix
2018-04-07 13:47:20 +03:00
Recep Aslantas
619ecdc5a4
quat: improve normalize
2018-04-07 13:46:46 +03:00
Recep Aslantas
9b8748acc4
quat: quaternion to mat3
2018-04-07 13:27:40 +03:00
Recep Aslantas
ae06c51746
improve glm_mat4_mulN for non-DEBUG environment
2018-04-07 13:22:44 +03:00
Recep Aslantas
11430559b4
fix isnan and isinf
2018-04-07 08:28:37 +03:00
Recep Aslantas
58f0043417
vector utils: isnan and isinf
...
* a vector which has least one NaN or INF member, is assumed not valid vector.
2018-04-06 22:57:24 +03:00
Recep Aslantas
7411ac36c1
update docs for euler angles
2018-04-03 17:05:45 +03:00
Recep Aslantas
ea0a10ade9
suppress warnings
2018-04-03 16:47:59 +03:00
Recep Aslantas
429fdfd5c5
update build scripts
2018-04-03 16:47:51 +03:00
Recep Aslantas
024412f00e
add docs for project/unproject
2018-04-03 16:41:13 +03:00
Recep Aslantas
e8615ea14c
fix tests list
2018-04-03 12:35:30 +03:00
Recep Aslantas
63acfd681e
fix unproject, add tests to project/unproject
2018-04-03 12:27:20 +03:00
Recep Aslantas
eb527e39b4
optimize project
2018-04-03 11:25:33 +03:00
Recep Aslantas
9f389ab8ec
project function
2018-04-03 11:09:13 +03:00
Recep Aslantas
3399595dc2
add vec2 type
2018-04-03 10:46:46 +03:00
Recep Aslantas
74f9865884
add docs for new aabb functions
2018-04-02 16:36:55 +03:00
Recep Aslantas
dbd1e334ea
aabb box size and radius
2018-04-02 16:26:14 +03:00
Recep Aslantas
acda316c12
get sign of float helper as -1, +1 and 0
...
* add clarification for zero input
2018-04-02 16:18:50 +03:00
Recep Aslantas
86efe64b8e
helper for check aabb is valid or not
2018-04-02 12:35:22 +03:00
Recep Aslantas
b0991342a6
aabb printer function
2018-04-02 12:08:08 +03:00
Recep Aslantas
984916d520
invalidate axis-aligned boundng box util
2018-04-02 11:50:53 +03:00
Recep Aslantas
ca504f7058
now working on v0.3.6
2018-03-29 00:12:16 +03:00
Recep Aslantas
26110f83d1
euler: fix thetaY in extracting angles
2018-03-27 12:35:19 +03:00
Recep Aslantas
d1f3feeb6e
test: add tests for euler XYZ
2018-03-27 12:14:46 +03:00
Recep Aslantas
4298211795
euler: fix extracting XYZ angles
2018-03-27 12:14:12 +03:00
Recep Aslantas
c244b68e73
build: improve build-deps
2018-03-27 11:22:05 +03:00
Recep Aslantas
205d13aa93
fix euler angles (extrinsic -> intrinsic)
...
because cglm uses intrinsics for these rotations
2018-03-27 11:14:26 +03:00
Recep Aslantas
21ec45b2af
add tests for clamp
2018-03-22 21:24:41 +03:00
Recep Aslantas
71b48b530e
add documentation for clamp
2018-03-22 21:24:26 +03:00
Recep Aslantas
48b7b30e42
add call version for clamp
2018-03-22 21:18:08 +03:00
Recep Aslantas
86055097e1
clamp functions
2018-03-22 18:10:10 +03:00
Recep Aslantas
780179ff0d
fix unproject
2018-03-08 22:29:10 +03:00
Recep Aslantas
c148eacdc2
fix unproject's parameters
2018-03-08 13:12:08 +03:00
Recep Aslantas
fadde1e26a
fix libtool version number
2018-03-08 13:04:29 +03:00
Recep Aslantas
29996d0bdd
add unproject function
2018-03-08 13:02:33 +03:00
Recep Aslantas
cfab79e546
now working on v0.3.5
2018-03-08 12:18:07 +03:00
Recep Aslantas
da2f3aaafd
docs: fix aabb docs
2018-03-03 18:17:58 +03:00
Recep Aslantas
0e964a1a62
complete documentation
2018-03-03 17:59:50 +03:00
Recep Aslantas
1fd0a74478
docs: euler angles documentation
2018-03-01 18:27:56 +03:00
Recep Aslantas
b3a39aa13c
docs: add docs for quaternions
2018-02-27 11:14:03 +03:00
Recep Aslantas
b737bb2dde
docs: add docs for affine matrix
2018-02-27 10:53:45 +03:00
Recep Aslantas
a610626693
fix vec4 parameter type
2018-02-26 23:24:43 +03:00
Recep Aslantas
425bf87c1f
docs: add docs for camera
2018-02-26 23:23:31 +03:00
Recep Aslantas
23698b7e48
docs: add docs for vec4
2018-02-26 22:08:04 +03:00
Recep Aslantas
be3f117374
docs: add docs for vec3-ext
2018-02-26 17:10:33 +03:00
Recep Aslantas
77e62163ea
docs: add docs for vec3
2018-02-26 16:21:04 +03:00
Recep Aslantas
96f773417a
docs: add docs for mat3
2018-02-26 12:16:09 +03:00
Recep Aslantas
02ab66a8b3
docs: add docs for transforms
2018-02-24 20:12:05 +03:00
Recep Aslantas
fc424631a4
docs: add docs for api, mat4
2018-02-24 13:18:28 +03:00
Recep Aslantas
6d5734fe7e
docs: update sphinx conf
2018-02-24 13:18:13 +03:00
Recep Aslantas
d95bf60b02
docs: update docs
2018-02-24 00:54:59 +03:00
Recep Aslantas
4ce2e86d9f
color: add luminance function
2018-02-23 11:12:55 +03:00
Recep Aslantas
8a16f358a3
build: fix C flags for older compiler[s]
2018-02-22 19:55:16 +03:00
Recep Aslantas
c1c659489a
surround macro values with parentheses
2018-02-18 11:16:03 +03:00
Recep Aslantas
681a74b39c
move credits to its own file to keep LICENSE more clear
2018-02-18 10:46:17 +03:00
Recep Aslantas
3882b72f7f
vec: helper macro for zero vectors
2018-02-05 17:46:28 +03:00
Recep Aslantas
9649a0285f
fix documentation param names
2018-01-18 20:52:24 +03:00
Recep Aslantas
0f9f4748d7
box: cull frustum with aabb helper
2018-01-18 20:08:45 +03:00
Recep Aslantas
a832d58d9f
box: cull frustum with aabb helper
2018-01-18 20:04:21 +03:00
Recep Aslantas
8b2c74b0cc
bounding box
2018-01-18 16:36:58 +03:00
Recep Aslantas
da8bbc6536
improve minv and maxv
2018-01-18 16:24:30 +03:00
Recep Aslantas
4a7cd2eb26
cam: convenient util for crating orthographic proj with AABB
2018-01-18 16:23:34 +03:00
Recep Aslantas
565ee2d6eb
frustum: fix bounding box
...
default value 0.0 causes to get min or max as 0 if max < 0 or min > 0
2018-01-18 16:12:44 +03:00
Recep Aslantas
ee78459340
add documentation to quaternion header
2018-01-15 16:33:57 +03:00
Recep Aslantas
37f6bb8725
add documentation to util header
2018-01-15 16:02:48 +03:00