Carsten Hartenfels
3fd12032e6
Clean up pi constants, deprecating the old names
...
GLM_PI* is now used for the double versions, GLM_PI*f for the float
versions. The CGLM_ prefixed versions are now deprecated, since that
prefix is kinda only used for constants.
See https://github.com/recp/cglm/pull/61#issuecomment-423069770
2018-09-21 07:29:54 +02:00
Carsten Hartenfels
59ee8c1fd2
Use even more precise definitions for pi constants
...
See https://github.com/recp/cglm/pull/61#issuecomment-422955122
2018-09-21 07:26:55 +02:00
Carsten Hartenfels
d3c50147cb
Replace non-standard M_PI* constants with literals
...
M_PI, M_PI_2 and M_PI_4 aren't part of the C standard. If you put your
gcc into strict standards mode, like `-std=c11`, you won't get these
constants and including cglm.h will fail.
This commit replaces those constants with their literal values. The cast
to a float remains, to keep exactly the same behavior as before.
2018-09-19 20:42:05 +02:00
Recep Aslantas
98da3daf82
identiy helper for arrays (matrix/quaternion)
...
this helpers makes all array elements identity
2018-09-12 12:44:11 +03:00
Jonathan Platzer
cc5f533fc9
Add macro for automatic alignment of matrices
2018-07-19 10:14:30 +02:00
Jonathan Platzer
2d63d7e0cd
Fix alignment issue when using AVX
2018-07-18 12:03:38 +02:00
Recep Aslantas
3738499927
update doc for vec4_ucopy
2018-07-14 12:12:15 +03:00
Recep Aslantas
1d527dc2f0
unalignned version for vec4_copy
2018-07-14 12:03:42 +03:00
Recep Aslantas
43c4d05d4a
new version for clamp: clamp to zero and one
2018-07-12 11:39:56 +03:00
Recep Aslantas
c5f5032fcc
fix function params docs
2018-07-10 11:42:18 +03:00
Recep Aslantas
5d605ce372
avoid zero division for percent
...
* two value may be same, in this case now returns 1.
* to must be >= from and current <= to && current >= from
2018-07-10 10:54:31 +03:00
Recep Aslantas
c216c0cb7e
add MIN and MAX macros
...
because we could use min/max for intergers too. it may not guarantee that MIN and MAX macros will always be defined by compiler
2018-06-26 15:27:53 +03:00
Recep Aslantas
eb8e0df6df
update version
2018-06-21 10:54:53 +03:00
Recep Aslantas
669777eb37
additional utils
2018-06-18 17:55:25 +03:00
Recep Aslantas
02f6c67393
improve easing funcs
2018-06-15 08:55:59 +03:00
Recep Aslantas
564324f5d2
easing functions
2018-06-10 10:29:02 +03:00
Recep Aslantas
857265b892
sphere point intersection
2018-06-09 18:21:29 +03:00
Recep Aslantas
fc14cedf89
update version
2018-06-09 18:10:54 +03:00
Recep Aslantas
7a80178357
improve quat_look
2018-06-09 18:10:44 +03:00
Recep Aslantas
720b617ee0
sphere and aabb
2018-05-30 23:42:22 +03:00
Recep Aslantas
3dc9070909
squared distance for vec3
2018-05-30 23:35:59 +03:00
Recep Aslantas
6b2b4b4f12
implement glm_aabb_sphere as GraphicsGems Solid Box - Solid Sphere test
2018-05-30 23:00:18 +03:00
Recep Aslantas
c8fc460ba1
add support for spheres
2018-05-29 23:29:09 +03:00
Recep Aslantas
5b3aabc103
aabb intersect functions
...
* AABB vs AABB
* AABB vs Point
* AABB vs Sphere
* AABB contains AABB
2018-05-29 23:19:39 +03:00
Recep Aslantas
af812e86eb
add a note to clarify up vector restriction for glm_lookat and glm_look
2018-05-29 11:30:38 +03:00
Recep Aslantas
059bdfdd4b
update docs
2018-05-27 11:54:05 +03:00
Recep Aslantas
e5d61b3433
update mat4_mulv3 api to include translation
2018-05-27 11:46:27 +03:00
Recep Aslantas
73c073cf32
add missing call functions
2018-05-27 11:44:06 +03:00
Recep Aslantas
1362bef50f
fix glm_translate_to
2018-05-23 23:13:41 +03:00
Recep Aslantas
7d783eeace
align local variables on stack
2018-05-23 23:04:06 +03:00
Recep Aslantas
e12e79b1a5
improve scale_make
2018-05-23 22:11:44 +03:00
Recep Aslantas
6cd3d52dc5
improve translate_make
2018-05-23 22:08:12 +03:00
Recep Aslantas
fb2cac9816
aabb: center of AABB helper
...
* it is just wrapper of vec_center but it saves to access min and max values of AABB
2018-05-22 17:45:37 +03:00
Recep Aslantas
4e63325f55
aabb: add missing call versions
2018-05-22 17:44:36 +03:00
Recep Aslantas
96c3e604ff
now working on v0.4.6
2018-05-22 17:43:46 +03:00
Recep Aslantas
599524dacf
docs: add new option to docs
2018-05-10 16:42:13 +03:00
Recep Aslantas
da5ad69863
simd: rename _mm_ extensions to glmm_
2018-05-10 14:27:53 +03:00
Recep Aslantas
9fc2ead8ef
Merge branch 'master' into optimizations
2018-05-10 13:59:10 +03:00
Recep Aslantas
c6d07bb6eb
surround PI with parentheses + code style + update docs
2018-05-10 12:18:54 +03:00
Recep Aslantas
94b286f1f9
docs: add new alignment option to docs
2018-05-09 16:43:42 +03:00
Recep Aslantas
f774925e8a
win, simd: make sure that CGLM_ALL_UNALIGNED is defined for older visual studios
2018-05-09 15:30:54 +03:00
Recep Aslantas
0e49e95161
win: update visual studio version for align requirement
2018-05-08 18:29:02 +03:00
Recep Aslantas
835cec2ccb
drop alignment requirement if CGLM_ALL_UNALIGNED defined
...
* bring alignment back for visual studio 2017
2018-05-08 16:26:33 +03:00
Recep Aslantas
5dbbd0826d
simd: replace glm_simd_ with glmm_
...
* now glmm_ is used as global simd namescape
2018-05-08 15:55:36 +03:00
Recep Aslantas
56f0bb0928
simd, avx: make alignment optional for load/store operations
2018-05-08 15:35:17 +03:00
Recep Aslantas
568001d26a
simd, sse2: make alignment optional for store operations
2018-05-08 15:31:09 +03:00
Recep Aslantas
252bf925fc
simd, sse2: make alignment optional for load operations
2018-05-08 15:25:23 +03:00
Recep Aslantas
0f339c5c03
fix header dependencies
2018-05-07 21:12:29 +03:00
Federico Santamorena
7c0e9e99c6
_WIN32 to _MSC_VER
2018-04-30 17:17:06 +02:00
Federico Santamorena
064209c917
replaced _WIN32 with _MSC_VER
2018-04-30 17:13:16 +02:00