diff --git a/linmath.h b/linmath.h index efe0d0e..42a4264 100644 --- a/linmath.h +++ b/linmath.h @@ -570,10 +570,10 @@ LINMATH_H_FUNC void quat_from_mat4x4(quat q, mat4x4 M) return; } - q[0] = r / 2.f; - q[1] = (M[p[0]][p[1]] - M[p[1]][p[0]]) / (2.f * r); - q[2] = (M[p[2]][p[0]] - M[p[0]][p[2]]) / (2.f * r); - q[3] = (M[p[2]][p[1]] - M[p[1]][p[2]]) / (2.f * r); + q[0] = (M[p[0]][p[1]] - M[p[1]][p[0]]) / (2.f * r); + q[1] = (M[p[2]][p[0]] - M[p[0]][p[2]]) / (2.f * r); + q[2] = (M[p[2]][p[1]] - M[p[1]][p[2]]) / (2.f * r); + q[3] = r / 2.f; } LINMATH_H_FUNC void mat4x4_arcball(mat4x4 R, mat4x4 M, vec2 _a, vec2 _b, float s)