summaryrefslogtreecommitdiff
path: root/src/mesh.h
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2025-12-04 14:55:24 -0500
committerFreya Murphy <freya@freyacat.org>2025-12-04 14:55:24 -0500
commitb56c621bf7c8689ba4b5d9fd64a6d69387f705df (patch)
treeabaa9aa9e41a04f06a42913472f01a31829a756c /src/mesh.h
parentinitial chunk rendering (diff)
downloadvoxel-b56c621bf7c8689ba4b5d9fd64a6d69387f705df.tar.gz
voxel-b56c621bf7c8689ba4b5d9fd64a6d69387f705df.tar.bz2
voxel-b56c621bf7c8689ba4b5d9fd64a6d69387f705df.zip
add ubos
Diffstat (limited to 'src/mesh.h')
-rw-r--r--src/mesh.h16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/mesh.h b/src/mesh.h
index e15b222..451803e 100644
--- a/src/mesh.h
+++ b/src/mesh.h
@@ -12,12 +12,20 @@ typedef struct {
} Mesh;
void mesh_init(Mesh *mesh, int vertex_count);
-void mesh_storef(Mesh *mesh, float *data, int data_len, int dimensions);
-void mesh_storei(Mesh *mesh, int *data, int data_len, int dimensions);
-void mesh_storeu(Mesh *mesh, unsigned int *data, int data_len, int dimensions);
-void mesh_storeb(Mesh *mesh, unsigned char *data, int data_len, int dimensions);
+void mesh_storef(Mesh *mesh, float *data, int count, int dimensions);
+void mesh_storei(Mesh *mesh, int *data, int count, int dimensions);
+void mesh_storeu(Mesh *mesh, unsigned int *data, int count, int dimensions);
+void mesh_storeb(Mesh *mesh, unsigned char *data, int count, int dimensions);
void mesh_finish(void);
void mesh_bind(Mesh *mesh);
void mesh_unbind(Mesh *mesh);
void mesh_draw(Mesh *mesh);
+void mesh_draw_instanced(Mesh *mesh, int count);
void mesh_free(Mesh *mesh);
+
+typedef struct {
+ GLuint id;
+} Uniform;
+
+void uniform_init(Uniform *uniform, void *data, int len);
+void uniform_free(Uniform *uniform);