aboutsummaryrefslogtreecommitdiff
path: root/07-july/src/math/vector4f.h
diff options
context:
space:
mode:
Diffstat (limited to '07-july/src/math/vector4f.h')
-rw-r--r--07-july/src/math/vector4f.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/07-july/src/math/vector4f.h b/07-july/src/math/vector4f.h
new file mode 100644
index 0000000..4f83695
--- /dev/null
+++ b/07-july/src/math/vector4f.h
@@ -0,0 +1,20 @@
+#ifndef VECTOR4F_H
+#define VECTOR4F_H
+
+#include <GL/glew.h>
+
+typedef struct
+{
+ GLfloat x, y, z, w;
+} vec4_t;
+
+extern vec4_t vec4_create(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+extern vec4_t vec4_add(const vec4_t* a, const vec4_t* b);
+extern vec4_t vec4_sub(const vec4_t* a, const vec4_t* b);
+extern vec4_t vec4_scalar_mul(const vec4_t* a, GLfloat scalar);
+extern GLfloat vec4_dot_mul(const vec4_t* a, const vec4_t* b);
+extern vec4_t vec4_cross_mul(const vec4_t* a, const vec4_t* b);
+extern GLfloat vec4_length(vec4_t* a);
+extern vec4_t vec4_normalize(vec4_t* a);
+
+#endif // VECTOR4F_H