aboutsummaryrefslogtreecommitdiff
path: root/07-july/src/math/vector3f.h
diff options
context:
space:
mode:
Diffstat (limited to '07-july/src/math/vector3f.h')
-rw-r--r--07-july/src/math/vector3f.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/07-july/src/math/vector3f.h b/07-july/src/math/vector3f.h
new file mode 100644
index 0000000..ab255d1
--- /dev/null
+++ b/07-july/src/math/vector3f.h
@@ -0,0 +1,20 @@
+#ifndef VECTOR3F_H
+#define VECTOR3F_H
+
+#include <GL/glew.h>
+
+typedef struct
+{
+ GLfloat x, y, z;
+} vec3_t;
+
+extern vec3_t vec3_create(GLfloat x, GLfloat y, GLfloat z);
+extern vec3_t vec3_add(const vec3_t* a, const vec3_t* b);
+extern vec3_t vec3_sub(const vec3_t* a, const vec3_t* b);
+extern vec3_t vec3_scalar_mul(const vec3_t* a, GLfloat scalar);
+extern GLfloat vec3_dot_mul(const vec3_t* a, const vec3_t* b);
+extern vec3_t vec3_cross_mul(const vec3_t* a, const vec3_t* b);
+extern GLfloat vec3_length(vec3_t* a);
+extern vec3_t vec3_normalize(vec3_t* a);
+
+#endif // VECTOR3F_H