Commit Graph

45 Commits

Author SHA1 Message Date
Recep Aslantas
4462a84f4a rename _dup (duplicate) to _copy
I think _copy is better and COMMON  name for duplicating/copying
vector, matrices
2017-02-23 09:57:28 +03:00
Recep Aslantas
595ad42cb8 re-organize folder structure
* move SIMD instructions (SSE2, AVX) to arch folder
2017-02-13 12:18:52 +03:00
Recep Aslantas
026750cae5 multiply vec3 with affine transform rotation (mat4)
this is may useful for rotate a vec3 with affine transform
2017-01-26 12:25:14 +03:00
Recep Aslantas
99c8aeab77 fix mat4_mulv and implement sse2 version 2017-01-24 23:07:14 +03:00
Recep Aslantas
f4b0d2bdde ma3 swap rows/columns 2016-10-16 20:45:58 +03:00
Recep Aslantas
bb3067ebfb mat4 swap rows/columns 2016-10-16 20:44:13 +03:00
Recep Aslantas
bdcea86ac6 move types to individual header
* include cglm-common to all headers
2016-10-13 23:44:02 +03:00
Recep Aslantas
14ee37b9c5 mat4 pick transposed mat3 2016-10-11 18:27:13 +03:00
Recep Aslantas
80c6c0a28b drop manual simd impl from mat3 2016-10-11 18:26:07 +03:00
Recep Aslantas
3c26a7f820 mat4: precise matrix inverse
* TODO: duplicated code!
2016-10-11 14:22:25 +03:00
Recep Aslantas
21f62ba9ab insert mat3 to mat4 upper-left 2016-10-11 13:58:30 +03:00
Recep Aslantas
5344599ae4 pick mat3 from mat4 2016-10-11 00:15:57 +03:00
Recep Aslantas
0cbfd3cd3b mat4 pure style 2016-10-10 17:40:49 +03:00
Recep Aslantas
78e4e867eb unaligned matrix duplication 2016-10-06 16:54:08 +03:00
Recep Aslantas
1b41c3d52a add braces to mat initializer 2016-10-05 12:14:27 +03:00
Recep Aslantas
ea6f12d90a vector [pure] documentation 2016-09-29 10:25:33 +03:00
Recep Aslantas
1ab4329013 style 2016-09-29 10:02:58 +03:00
Recep Aslantas
268db00c44 mat4 [pure] documentation 2016-09-29 00:48:13 +03:00
Recep Aslantas
2cb9f7f334 fix #3
with caching values, compiler produce better assembly even identical
sse2 implementation
2016-09-27 21:18:52 +03:00
Recep Aslantas
dc73cab522 helper fn for duplicating matrix4 2016-09-27 16:50:09 +03:00
Recep Aslantas
f5a290364b add guard to check sse2 headers 2016-09-21 17:34:30 +03:00
Recep Aslantas
b8589ae0e2 avx: implement mat4 avx mul 2016-09-21 16:15:48 +03:00
Recep Aslantas
ce74bc4a82 make mat4 transpose and scale inline function 2016-09-21 00:23:17 +03:00
Recep Aslantas
b2b50076d2 re-optimize mat4 determinant
* note: for square matrices det(a) = det(transpose(a)), we can go with
row-major calc here
2016-09-20 23:31:27 +03:00
Recep Aslantas
8a6fe6948a improve mat4 mul 2016-09-20 03:13:48 +03:00
Recep Aslantas
b42a599310 typo 2016-09-19 20:37:07 +03:00
Recep Aslantas
499aab1001 fix mat4 vec4 mul 2016-09-19 15:29:25 +03:00
Recep Aslantas
f280d3675e transpose inverse 2016-09-18 12:59:23 +03:00
Recep Aslantas
6c0cfe310a quaternions 2016-09-18 00:53:24 +03:00
Recep Aslantas
146dbe4656 cpp: fix array initializer must be an initializer list 2016-09-17 13:21:08 +03:00
Recep Aslantas
d4c6ae350f fix fn calls 2016-09-17 12:50:45 +03:00
Recep Aslantas
6046d0cdde rename and cast mat4x4 id 2016-09-17 12:35:10 +03:00
Recep Aslantas
0b0a74e9bf use self as default 2016-09-17 12:31:23 +03:00
Recep Aslantas
4d171c8758 rename mat4 functions 2016-09-17 12:30:33 +03:00
Recep Aslantas
ab58ae76eb matrix determinant sse2 2016-09-17 12:19:15 +03:00
Recep Aslantas
253f5ba5f6 optimize matrix4x4 inverse for SSE2 2016-09-16 20:24:55 +03:00
Recep Aslantas
184069361a use non-SIMD scale version for non-SIMD inverse
* this way is faster, probably mixing manual SSE with compiler result
causes cache misses
2016-09-16 00:56:00 +03:00
Recep Aslantas
2ff2c4710b 4x4 matrix inverse (non-SIMD) 2016-09-15 17:57:21 +03:00
Recep Aslantas
6c5143313e matrix scale 2016-09-15 17:54:37 +03:00
Recep Aslantas
602b487b53 mat4 non-simd determinant 2016-09-14 12:32:03 +03:00
Recep Aslantas
4aecc0b3e2 matrix transpose 2016-09-12 00:15:03 +03:00
Recep Aslantas
92ce6ee7fb mat4 mul N 2016-09-11 23:41:03 +03:00
Recep Aslantas
111908b9e0 pre defined identity matrix4f 2016-09-11 15:23:36 +03:00
Recep Aslantas
f708240ad3 update mat4 and mat4 mul
because m1 and m2 could be same matrix e.g dest = m1*m1
2016-09-11 13:07:39 +03:00
Recep Aslantas
6c6418d19a Initial Commit 2016-09-11 12:29:22 +03:00