summaryrefslogtreecommitdiff
path: root/prge_model.h
diff options
context:
space:
mode:
authorpryazha <pryadeiniv@mail.ru>2025-03-19 08:46:04 +0500
committerpryazha <pryadeiniv@mail.ru>2025-03-19 08:46:04 +0500
commitb1389bad67cccd3da6815c2d5a436c177f09594b (patch)
tree393dee77b5faef3cfd6e78eda8ac07273cdcc85e /prge_model.h
parent34821e9fefb0d7cbf9e72a2457b2901edbbe03bb (diff)
window, texture, model, camera and gui (silly button)
Diffstat (limited to 'prge_model.h')
-rw-r--r--prge_model.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/prge_model.h b/prge_model.h
new file mode 100644
index 0000000..d747232
--- /dev/null
+++ b/prge_model.h
@@ -0,0 +1,18 @@
+#ifndef PRGE_MODEL_H
+#define PRGE_MODEL_H
+
+#define MAX_TEXTURE 5
+
+Vertex vert_init(V3 pos, V2 texc);
+
+Mesh *mesh_init(Arena *arena, V3 origin, V3 rotate, Vertex *verts, U32 nverts, U32 *indices, U32 nindices);
+void mesh_add_texture(Mesh *mesh, Texture texture);
+Mesh *mesh_gen_quad(Arena *arena, V3 origin, V3 rotate, F32 w, F32 h);
+Mesh *mesh_gen_circle(Arena *arena, V3 origin, V3 rotate, F32 r, U32 nverts);
+void mesh_draw(Mesh *mesh);
+
+Model *model_init(Arena *arena, V3 origin, V3 rotate, Mesh *meshes, U32 nmeshes);
+Model *model_load(Arena *arena, V3 origin, V3 rotate, Str8 filename);
+void model_draw(U32 shader, MAT4 *proj, MAT4 *view, Model *model);
+
+#endif /* PRGE_MODEL_H */