aboutsummaryrefslogtreecommitdiff
path: root/src/math/mat4.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/math/mat4.h')
-rw-r--r--src/math/mat4.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/math/mat4.h b/src/math/mat4.h
new file mode 100644
index 0000000..d81da63
--- /dev/null
+++ b/src/math/mat4.h
@@ -0,0 +1,24 @@
+#ifndef MATH_MAT4_H
+#define MATH_MAT4_H
+
+#include <array>
+#include "math/math_vector.h"
+
+class Mat4 {
+ public:
+ static Mat4 idty();
+ static Mat4 rot_x(float a);
+ static Mat4 rot_y(float a);
+ static Mat4 rot_z(float a);
+
+ std::array<float, 16> values;
+
+ Mat4 operator-();
+ Mat4 operator+(Mat4 m);
+ Mat4 operator-(Mat4 m);
+ Mat4 operator*(Mat4 m);
+ MathVector4 operator*(MathVector4 v);
+ std::array<MathVector4, 4> to_vecs();
+};
+
+#endif // MATH_MAT4_H