Recep Aslantas
|
88fe54b200
|
msvc: disable alignment in typedef (for now)
Compiler Error C2719: The align __declspec modifier is not permitted on
function parameters.
ref #4
|
2016-09-28 17:31:10 +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
|
e6ba9d6ab0
|
opengl: fix type cast
|
2016-09-21 18:36:01 +03:00 |
|
Recep Aslantas
|
f5a290364b
|
add guard to check sse2 headers
|
2016-09-21 17:34:30 +03:00 |
|
Recep Aslantas
|
a7f280bf97
|
avx: fix permute
|
2016-09-21 16:19:32 +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
|
5115814d5b
|
glm --> opengl helper function
|
2016-09-19 19:03:07 +03:00 |
|
Recep Aslantas
|
b69944be0a
|
beautify print outputs
|
2016-09-19 15:48:14 +03:00 |
|
Recep Aslantas
|
00ee60acc9
|
vec4 to vec3
|
2016-09-19 15:31:08 +03:00 |
|
Recep Aslantas
|
499aab1001
|
fix mat4 vec4 mul
|
2016-09-19 15:29:25 +03:00 |
|
Recep Aslantas
|
0ad9992a99
|
fix matrix inverse simd
|
2016-09-19 00:19:07 +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
|
5a28f2ec60
|
frustum, ortho and perspective functions
|
2016-09-17 19:04:53 +03:00 |
|
Recep Aslantas
|
146dbe4656
|
cpp: fix array initializer must be an initializer list
|
2016-09-17 13:21:08 +03:00 |
|
Recep Aslantas
|
2366e3b85a
|
align vec4/mat4 to 16 in typedef
|
2016-09-17 12:54:24 +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
|
6b017b14b3
|
remove unused variable
|
2016-09-17 11:39:53 +03:00 |
|
Recep Aslantas
|
a60e1a741f
|
improve mat4x4 inverse SIMD
|
2016-09-16 23:02:16 +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
|
c26c1d7707
|
optimize slerp with SSE
|
2016-09-13 18:36:40 +03:00 |
|
Recep Aslantas
|
5825c24e8f
|
print fn for vectors
|
2016-09-13 18:18:35 +03:00 |
|
Recep Aslantas
|
2e9894b816
|
versor
|
2016-09-13 18:18:05 +03:00 |
|
Recep Aslantas
|
e90f6b505d
|
optimize individual translates
|
2016-09-13 12:29:01 +03:00 |
|
Recep Aslantas
|
c480267463
|
optimize affine translate with SSE
|
2016-09-13 12:17:25 +03:00 |
|
Recep Aslantas
|
7ef105bab0
|
use float for math funcs
|
2016-09-13 11:57:52 +03:00 |
|
Recep Aslantas
|
705a4bb9a0
|
optimize vec4 with SIMD (SSE)
|
2016-09-13 11:54:51 +03:00 |
|
Recep Aslantas
|
b957509c9e
|
fix vector types
|
2016-09-13 11:14:44 +03:00 |
|
Recep Aslantas
|
f7e7bffe11
|
drop _self postfix from normalize
|
2016-09-13 00:47:07 +03:00 |
|
Recep Aslantas
|
1b3e07898f
|
fix vec3/vec4 usage
|
2016-09-13 00:42:44 +03:00 |
|
Recep Aslantas
|
18a12763d0
|
fix fn call
|
2016-09-13 00:05:55 +03:00 |
|
Recep Aslantas
|
5ef29b76e2
|
fix affine scale
|
2016-09-13 00:01:36 +03:00 |
|
Recep Aslantas
|
fbbc76e705
|
use g-truc glm style translate, make _self default
|
2016-09-12 17:46:33 +03:00 |
|
Recep Aslantas
|
96c3bcb2f6
|
vector ops
|
2016-09-12 16:52:38 +03:00 |
|
Recep Aslantas
|
603e197d37
|
get memcpy type as param
|
2016-09-12 16:51:23 +03:00 |
|
Recep Aslantas
|
3d34f27088
|
rotate around single axis
|
2016-09-12 10:49:44 +03:00 |
|
Recep Aslantas
|
5fcadc24cc
|
add option to scale with single val
|
2016-09-12 08:45:10 +03:00 |
|