diff options
author | jvech <jmvalenciae@unal.edu.co> | 2022-08-29 15:35:03 -0500 |
---|---|---|
committer | jvech <jmvalenciae@unal.edu.co> | 2022-08-29 15:35:03 -0500 |
commit | 61edf5b3a7eee3b4ff6db3664e638b17bf91ebc1 (patch) | |
tree | 5116bb20d5bf49afbb1bfb22b5f5cfb77ee39fb5 /src/linear.h | |
parent | d7bd9a3dbd3486a4b0615dc9f30a890ff6d04ec6 (diff) |
feat: Camera and movement implemented
Diffstat (limited to 'src/linear.h')
-rw-r--r-- | src/linear.h | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/src/linear.h b/src/linear.h index c5f40aa..4ed2298 100644 --- a/src/linear.h +++ b/src/linear.h @@ -7,34 +7,34 @@ typedef struct { float matrix[4][4]; -} mat4; +} Mat4; typedef struct { float vector[3]; -} vec3; +} Vec3; -mat4 linearTranslatev(vec3 translate_vector); -mat4 linearRotatev(float degree, vec3 rotation_axis); -mat4 linearScalev(vec3 scale_vector); -mat4 linearTranslate(float translate_x, float translate_y, float translate_z); -mat4 linearScale(float scale_x, float scale_y, float scale_z); -mat4 linearRotate(float degree, float rotate_x, float rotate_y, float rotate_z); -mat4 linearPerspective(float FoV, float ratio, float near, float far); -mat4 linearLookAt(vec3 position, vec3 target, vec3 up); +Mat4 linearTranslatev(Vec3 translate_vector); +Mat4 linearRotatev(float degree, Vec3 rotation_axis); +Mat4 linearScalev(Vec3 scale_vector); +Mat4 linearTranslate(float translate_x, float translate_y, float translate_z); +Mat4 linearScale(float scale_x, float scale_y, float scale_z); +Mat4 linearRotate(float degree, float rotate_x, float rotate_y, float rotate_z); +Mat4 linearPerspective(float FoV, float ratio, float near, float far); +Mat4 linearLookAt(Vec3 position, Vec3 target, Vec3 up); -mat4 linearMat4Fill(float value); -mat4 linearMat4Identity(float value); -mat4 linearMat4Mul(mat4 x1, mat4 x2); -mat4 linearMat4Muln(int n, ...); -mat4 linearMat4Transpose(mat4 x); -mat4 linearMat4Inv(mat4 x); //TODO -mat4 linearMat4Add(mat4 x1, mat4 x2); //TODO -float linearMat4Det(mat4 x); //TODO +Mat4 linearMat4Fill(float value); +Mat4 linearMat4Identity(float value); +Mat4 linearMat4Mul(Mat4 x1, Mat4 x2); +Mat4 linearMat4Muln(int n, ...); +Mat4 linearMat4Transpose(Mat4 x); +Mat4 linearMat4Inv(Mat4 x); //TODO +Mat4 linearMat4Add(Mat4 x1, Mat4 x2); //TODO +float linearMat4Det(Mat4 x); //TODO -vec3 linearVec3(float x, float y, float z); -vec3 linearVec3Normalize(vec3 vector); -vec3 linearVec3Add(vec3 vector1, vec3 vector2); -vec3 linearVec3ScalarMulp(vec3 vector, float scalar); -vec3 linearVec3CrossProduct(vec3 vector1, vec3 vector2); -float linearVec3DotProduct(vec3 vector1, vec3 vector2); +Vec3 linearVec3(float x, float y, float z); +Vec3 linearVec3Normalize(Vec3 vector); +Vec3 linearVec3Add(Vec3 vector1, Vec3 vector2); +Vec3 linearVec3ScalarMulp(Vec3 vector, float scalar); +Vec3 linearVec3CrossProduct(Vec3 vector1, Vec3 vector2); +float linearVec3DotProduct(Vec3 vector1, Vec3 vector2); #endif |