diff options
author | pryazha <pryadeiniv@mail.ru> | 2025-03-19 08:44:10 +0500 |
---|---|---|
committer | pryazha <pryadeiniv@mail.ru> | 2025-03-19 08:44:10 +0500 |
commit | aa00f2f2d7cc70edb45726dc21d359bc05036387 (patch) | |
tree | 7f55503104c7c5beda23637408c32c19d013c335 /prb_math.h | |
parent | 0bd7c5dc0725a4882cb33c5d8f1a3b101d4025cd (diff) |
mainly string change
Diffstat (limited to 'prb_math.h')
-rw-r--r-- | prb_math.h | 101 |
1 files changed, 54 insertions, 47 deletions
@@ -7,58 +7,65 @@ #define DEG2RAD F32_PI/180.0f #define RAD2DEG 182.0f/F32_PI -F32 f32sin(F32 a); -F32 f32cos(F32 a); -F32 f32sqrt(F32 a); +F32 f32sin(F32 a); +F32 f32cos(F32 a); +F32 f32tan(F32 a); +F32 f32sqrt(F32 a); /* NOTE(pryazha): Vectors */ -V2 v2(F32 x, F32 y); -V2 v2a(F32 x); -V2 v2neg(V2 a); -V2 v2add(V2 a, V2 b); -V2 v2sub(V2 a, V2 b); -V2 v2scalef(V2 a, F32 s); -V2 v2scale(V2 a, V2 s); -F32 v2dot(V2 a, V2 b); -F32 v2len2(V2 a); -F32 v2len(V2 a); -void v2print(V2 a); +V2 v2(F32 x, F32 y); +V2 v2a(F32 x); +V2 v2inv(V2 a); +V2 v2add(V2 a, V2 b); +V2 v2sub(V2 a, V2 b); +V2 v2scalef(V2 a, F32 s); +V2 v2scale(V2 a, V2 s); +F32 v2dot(V2 a, V2 b); +F32 v2len2(V2 a); +F32 v2len(V2 a); +V2 v2norm(V2 a); +void v2print(V2 a); -V3 v3(F32 x, F32 y, F32 z); -V3 v3a(F32 x); -V3 v3neg(V3 a); -V3 v3add(V3 a, V3 b); -V3 v3sub(V3 a, V3 b); -V3 v3scalef(V3 a, F32 s); -V3 v3scale(V3 a, V3 s); -F32 v3dot(V3 a, V3 b); -V3 v3cross(V3 l, V3 r); -F32 v3len2(V3 a); -F32 v3len(V3 a); -void v3print(V3 a); +V3 v3(F32 x, F32 y, F32 z); +V3 v3a(F32 x); +V3 v3fromv2(V2 a); +V3 v3fromv4(V4 a); +V3 v3inv(V3 a); +V3 v3add(V3 a, V3 b); +V3 v3sub(V3 a, V3 b); +V3 v3scalef(V3 a, F32 s); +V3 v3scale(V3 a, V3 s); +F32 v3dot(V3 a, V3 b); +V3 v3cross(V3 l, V3 r); +F32 v3len2(V3 a); +F32 v3len(V3 a); +V3 v3norm(V3 a); +void v3print(V3 a); -V4 v4(F32 x, F32 y, F32 z, F32 w); -V4 v4a(F32 x); -V4 v4fromv3(V3 a); -V4 v4neg(V4 a); -V4 v4add(V4 a, V4 b); -V4 v4sub(V4 a, V4 b); -V4 v4scalef(V4 a, F32 s); -V4 v4scale(V4 a, V4 s); -F32 v4dot(V4 a, V4 b); -F32 v4len2(V4 a); -F32 v4len(V4 a); -void v4print(V4 a); +V4 v4(F32 x, F32 y, F32 z, F32 w); +V4 v4a(F32 x); +V4 v4fromv3(V3 a); +V4 v4inv(V4 a); +V4 v4add(V4 a, V4 b); +V4 v4sub(V4 a, V4 b); +V4 v4scalef(V4 a, F32 s); +V4 v4scale(V4 a, V4 s); +F32 v4dot(V4 a, V4 b); +F32 v4len2(V4 a); +F32 v4len(V4 a); +V4 v4norm(V4 a); +void v4print(V4 a); /* NOTE(pryazha): Matrices */ -F32 mat4det(Mat4 m); -Mat4 mat4transpose(Mat4 m); -Mat4 mat4mul(Mat4 left, Mat4 right); -Mat4 mat4translate(Mat4 m, V3 v); -Mat4 mat4scale(Mat4 m, V3 v); -Mat4 mat4_change_basis(V3 x, V3 y, V3 z); -Mat4 mat4rotate(Mat4 m, V3 angles); /* NOTE(pryazha): Angles in degrees */ -V4 mat4v4mul(Mat4 m, V4 v); -void mat4print(Mat4 m); +F32 mat4det(MAT4 m); +MAT4 mat4transp(MAT4 m); +MAT4 mat4mul(MAT4 left, MAT4 right); +MAT4 mat4transl(MAT4 m, V3 v); +MAT4 mat4scale(MAT4 m, V3 v); +MAT4 mat4_change_basis(V3 x, V3 y, V3 z); +/* NOTE(pryazha): Angles in degrees */ +MAT4 mat4rotate(MAT4 m, V3 angles); +V4 mat4v4mul(MAT4 m, V4 v); +void mat4print(MAT4 m); #endif /* PRB_MATH_H */ |