summaryrefslogtreecommitdiff
path: root/src/engine/M_render.c
diff options
context:
space:
mode:
authorDrNuget <drnuget@outlook.com>2026-01-10 06:41:13 +0200
committerDrNuget <drnuget@outlook.com>2026-01-10 06:41:13 +0200
commit3a3b64bedc47a0795358c6be7062160f52f2fc3b (patch)
treeeeaebee9ad6bab1a91e46ed8e7f682ac404e16e2 /src/engine/M_render.c
parent7f3aa1cff755d21d972457b05c140cf465b9fa19 (diff)
downloadmnm-3a3b64bedc47a0795358c6be7062160f52f2fc3b.tar.gz
added FPS camera movement and probably some other changes
Diffstat (limited to 'src/engine/M_render.c')
-rw-r--r--src/engine/M_render.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/engine/M_render.c b/src/engine/M_render.c
index 1d83ceb..9317167 100644
--- a/src/engine/M_render.c
+++ b/src/engine/M_render.c
@@ -9,9 +9,19 @@ void M_drawObject(M_RenderInfo *render_info, M_Camera *camera, M_Object *obj)
{
glUseProgram(obj->shader->prog);
glUniformMatrix4fv(obj->shader->transform_loc, 1, GL_FALSE, (float*)obj->transform);
+ M_ViewModel *model;
+ switch (obj->type) {
+ case M_OBJECT_CUBE:
+ model = &render_info->global_models[0];
+ break;
+ case M_OBJECT_CUSTOM:
+ model = obj->model;
+ break;
+ }
+ M_bindViewModel(model);
M_cameraViewMatrix(camera);
glUniformMatrix4fv(obj->shader->view_loc, 1, GL_FALSE, (float*)camera->view_matrix);
glUniformMatrix4fv(obj->shader->projection_loc, 1, GL_FALSE, (float*)render_info->projection_matrix);
- glDrawElements(GL_TRIANGLES, obj->model->num_indices, GL_UNSIGNED_INT, 0);
+ glDrawElements(GL_TRIANGLES, model->num_indices, GL_UNSIGNED_INT, 0);
}