aboutsummaryrefslogtreecommitdiff
path: root/08-august/src/renderer/shape.h
diff options
context:
space:
mode:
authorThomas Guillermo Albers Raviola <thomas@thomaslabs.org>2026-01-16 23:02:32 +0100
committerThomas Guillermo Albers Raviola <thomas@thomaslabs.org>2026-01-16 23:02:32 +0100
commit6b8af9cf83851c075c6c9514b1deaa931c2b19a4 (patch)
tree428986b49c32e21d3f7a3c2dfa41858ae0153209 /08-august/src/renderer/shape.h
Initial commit
Diffstat (limited to '08-august/src/renderer/shape.h')
-rw-r--r--08-august/src/renderer/shape.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/08-august/src/renderer/shape.h b/08-august/src/renderer/shape.h
new file mode 100644
index 0000000..8942548
--- /dev/null
+++ b/08-august/src/renderer/shape.h
@@ -0,0 +1,26 @@
+#ifndef SHAPE_H
+#define SHAPE_H
+
+#include "../vertex.h"
+
+typedef struct
+{
+ GLuint num_indices;
+ GLuint vbo, ebo, vao;
+} shape_t;
+
+extern shape_t* Shape_MakeCube();
+extern shape_t* Shape_MakeArrow();
+extern shape_t* Shape_MakeQuad();
+extern shape_t* Shape_MakeSkyBox(float size);
+
+extern shape_t* Shape_LoadOBJ(const char* path);
+
+extern shape_t* Shape_CreateFromRawData(vertex_t* vertices, GLsizeiptr vertexBufferSize,
+ GLushort* indices, GLsizeiptr indexBufferSize);
+
+extern void Shape_Free(shape_t* shape);
+
+
+
+#endif // SHAPE_H