Merge branch 'master' into master

This commit is contained in:
Recep Aslantas
2019-04-30 10:16:55 +03:00
committed by GitHub
54 changed files with 751 additions and 762 deletions

View File

@@ -68,15 +68,15 @@ glm_mat4_identity(mat4 mat);
CGLM_INLINE
void
glm_mat4_mulv(const mat4 m, const vec4 v, vec4 dest);
glm_mat4_mulv(mat4 m, vec4 v, vec4 dest);
CGLM_INLINE
void
glm_mul_rot(const mat4 m1, const mat4 m2, mat4 dest);
glm_mul_rot(mat4 m1, mat4 m2, mat4 dest);
CGLM_INLINE
void
glm_translate(mat4 m, const vec3 v);
glm_translate(mat4 m, vec3 v);
/*
* IMPORTANT:
@@ -113,7 +113,7 @@ glm_quat_identity(versor q) {
*/
CGLM_INLINE
void
glm_quat_identity_array(versor * const __restrict q, size_t count) {
glm_quat_identity_array(versor * __restrict q, size_t count) {
CGLM_ALIGN(16) versor v = GLM_QUAT_IDENTITY_INIT;
size_t i;
@@ -149,7 +149,7 @@ glm_quat_init(versor q, float x, float y, float z, float w) {
*/
CGLM_INLINE
void
glm_quatv(versor q, float angle, const vec3 axis) {
glm_quatv(versor q, float angle, vec3 axis) {
CGLM_ALIGN(8) vec3 k;
float a, c, s;
@@ -189,7 +189,7 @@ glm_quat(versor q, float angle, float x, float y, float z) {
*/
CGLM_INLINE
void
glm_quat_copy(const versor q, versor dest) {
glm_quat_copy(versor q, versor dest) {
glm_vec4_copy(q, dest);
}
@@ -200,7 +200,7 @@ glm_quat_copy(const versor q, versor dest) {
*/
CGLM_INLINE
float
glm_quat_norm(const versor q) {
glm_quat_norm(versor q) {
return glm_vec4_norm(q);
}
@@ -212,7 +212,7 @@ glm_quat_norm(const versor q) {
*/
CGLM_INLINE
void
glm_quat_normalize_to(const versor q, versor dest) {
glm_quat_normalize_to(versor q, versor dest) {
#if defined( __SSE2__ ) || defined( __SSE2__ )
__m128 xdot, x0;
float dot;
@@ -260,7 +260,7 @@ glm_quat_normalize(versor q) {
*/
CGLM_INLINE
float
glm_quat_dot(const versor p, const versor q) {
glm_quat_dot(versor p, versor q) {
return glm_vec4_dot(p, q);
}
@@ -272,7 +272,7 @@ glm_quat_dot(const versor p, const versor q) {
*/
CGLM_INLINE
void
glm_quat_conjugate(const versor q, versor dest) {
glm_quat_conjugate(versor q, versor dest) {
glm_vec4_negate_to(q, dest);
dest[3] = -dest[3];
}
@@ -285,7 +285,7 @@ glm_quat_conjugate(const versor q, versor dest) {
*/
CGLM_INLINE
void
glm_quat_inv(const versor q, versor dest) {
glm_quat_inv(versor q, versor dest) {
CGLM_ALIGN(16) versor conj;
glm_quat_conjugate(q, conj);
glm_vec4_scale(conj, 1.0f / glm_vec4_norm2(q), dest);
@@ -300,7 +300,7 @@ glm_quat_inv(const versor q, versor dest) {
*/
CGLM_INLINE
void
glm_quat_add(const versor p, const versor q, versor dest) {
glm_quat_add(versor p, versor q, versor dest) {
glm_vec4_add(p, q, dest);
}
@@ -313,7 +313,7 @@ glm_quat_add(const versor p, const versor q, versor dest) {
*/
CGLM_INLINE
void
glm_quat_sub(const versor p, const versor q, versor dest) {
glm_quat_sub(versor p, versor q, versor dest) {
glm_vec4_sub(p, q, dest);
}
@@ -324,7 +324,7 @@ glm_quat_sub(const versor p, const versor q, versor dest) {
*/
CGLM_INLINE
float
glm_quat_real(const versor q) {
glm_quat_real(versor q) {
return q[3];
}
@@ -336,7 +336,7 @@ glm_quat_real(const versor q) {
*/
CGLM_INLINE
void
glm_quat_imag(const versor q, vec3 dest) {
glm_quat_imag(versor q, vec3 dest) {
dest[0] = q[0];
dest[1] = q[1];
dest[2] = q[2];
@@ -349,7 +349,7 @@ glm_quat_imag(const versor q, vec3 dest) {
*/
CGLM_INLINE
void
glm_quat_imagn(const versor q, vec3 dest) {
glm_quat_imagn(versor q, vec3 dest) {
glm_normalize_to(q, dest);
}
@@ -360,7 +360,7 @@ glm_quat_imagn(const versor q, vec3 dest) {
*/
CGLM_INLINE
float
glm_quat_imaglen(const versor q) {
glm_quat_imaglen(versor q) {
return glm_vec3_norm(q);
}
@@ -371,7 +371,7 @@ glm_quat_imaglen(const versor q) {
*/
CGLM_INLINE
float
glm_quat_angle(const versor q) {
glm_quat_angle(versor q) {
/*
sin(theta / 2) = length(x*x + y*y + z*z)
cos(theta / 2) = w
@@ -388,7 +388,7 @@ glm_quat_angle(const versor q) {
*/
CGLM_INLINE
void
glm_quat_axis(const versor q, versor dest) {
glm_quat_axis(versor q, versor dest) {
glm_quat_imagn(q, dest);
}
@@ -406,7 +406,7 @@ glm_quat_axis(const versor q, versor dest) {
*/
CGLM_INLINE
void
glm_quat_mul(const versor p, const versor q, versor dest) {
glm_quat_mul(versor p, versor q, versor dest) {
/*
+ (a1 b2 + b1 a2 + c1 d2 d1 c2)i
+ (a1 c2 b1 d2 + c1 a2 + d1 b2)j
@@ -431,7 +431,7 @@ glm_quat_mul(const versor p, const versor q, versor dest) {
*/
CGLM_INLINE
void
glm_quat_mat4(const versor q, mat4 dest) {
glm_quat_mat4(versor q, mat4 dest) {
float w, x, y, z,
xx, yy, zz,
xy, yz, xz,
@@ -478,7 +478,7 @@ glm_quat_mat4(const versor q, mat4 dest) {
*/
CGLM_INLINE
void
glm_quat_mat4t(const versor q, mat4 dest) {
glm_quat_mat4t(versor q, mat4 dest) {
float w, x, y, z,
xx, yy, zz,
xy, yz, xz,
@@ -525,7 +525,7 @@ glm_quat_mat4t(const versor q, mat4 dest) {
*/
CGLM_INLINE
void
glm_quat_mat3(const versor q, mat3 dest) {
glm_quat_mat3(versor q, mat3 dest) {
float w, x, y, z,
xx, yy, zz,
xy, yz, xz,
@@ -564,7 +564,7 @@ glm_quat_mat3(const versor q, mat3 dest) {
*/
CGLM_INLINE
void
glm_quat_mat3t(const versor q, mat3 dest) {
glm_quat_mat3t(versor q, mat3 dest) {
float w, x, y, z,
xx, yy, zz,
xy, yz, xz,
@@ -606,7 +606,7 @@ glm_quat_mat3t(const versor q, mat3 dest) {
*/
CGLM_INLINE
void
glm_quat_lerp(const versor from, const versor to, float t, versor dest) {
glm_quat_lerp(versor from, versor to, float t, versor dest) {
glm_vec4_lerp(from, to, t, dest);
}
@@ -621,7 +621,7 @@ glm_quat_lerp(const versor from, const versor to, float t, versor dest) {
*/
CGLM_INLINE
void
glm_quat_slerp(const versor from, const versor to, float t, versor dest) {
glm_quat_slerp(versor from, versor to, float t, versor dest) {
CGLM_ALIGN(16) vec4 q1, q2;
float cosTheta, sinTheta, angle;
@@ -664,7 +664,7 @@ glm_quat_slerp(const versor from, const versor to, float t, versor dest) {
*/
CGLM_INLINE
void
glm_quat_look(const vec3 eye, const versor ori, mat4 dest) {
glm_quat_look(vec3 eye, versor ori, mat4 dest) {
/* orientation */
glm_quat_mat4t(ori, dest);
@@ -683,7 +683,7 @@ glm_quat_look(const vec3 eye, const versor ori, mat4 dest) {
*/
CGLM_INLINE
void
glm_quat_for(const vec3 dir, const vec3 fwd, const vec3 up, versor dest) {
glm_quat_for(vec3 dir, vec3 fwd, vec3 up, versor dest) {
CGLM_ALIGN(8) vec3 axis;
float dot, angle;
@@ -717,11 +717,7 @@ glm_quat_for(const vec3 dir, const vec3 fwd, const vec3 up, versor dest) {
*/
CGLM_INLINE
void
glm_quat_forp(const vec3 from,
const vec3 to,
const vec3 fwd,
const vec3 up,
versor dest) {
glm_quat_forp(vec3 from, vec3 to, vec3 fwd, vec3 up, versor dest) {
CGLM_ALIGN(8) vec3 dir;
glm_vec3_sub(to, from, dir);
glm_quat_for(dir, fwd, up, dest);
@@ -736,7 +732,7 @@ glm_quat_forp(const vec3 from,
*/
CGLM_INLINE
void
glm_quat_rotatev(const versor q, const vec3 v, vec3 dest) {
glm_quat_rotatev(versor q, vec3 v, vec3 dest) {
CGLM_ALIGN(16) versor p;
CGLM_ALIGN(8) vec3 u, v1, v2;
float s;
@@ -764,7 +760,7 @@ glm_quat_rotatev(const versor q, const vec3 v, vec3 dest) {
*/
CGLM_INLINE
void
glm_quat_rotate(const mat4 m, const versor q, mat4 dest) {
glm_quat_rotate(mat4 m, versor q, mat4 dest) {
CGLM_ALIGN_MAT mat4 rot;
glm_quat_mat4(q, rot);
glm_mul_rot(m, rot, dest);
@@ -779,7 +775,7 @@ glm_quat_rotate(const mat4 m, const versor q, mat4 dest) {
*/
CGLM_INLINE
void
glm_quat_rotate_at(mat4 m, const versor q, const vec3 pivot) {
glm_quat_rotate_at(mat4 m, versor q, vec3 pivot) {
CGLM_ALIGN(8) vec3 pivotInv;
glm_vec3_negate_to(pivot, pivotInv);
@@ -803,7 +799,7 @@ glm_quat_rotate_at(mat4 m, const versor q, const vec3 pivot) {
*/
CGLM_INLINE
void
glm_quat_rotate_atm(mat4 m, const versor q, const vec3 pivot) {
glm_quat_rotate_atm(mat4 m, versor q, vec3 pivot) {
CGLM_ALIGN(8) vec3 pivotInv;
glm_vec3_negate_to(pivot, pivotInv);