summaryrefslogtreecommitdiff
path: root/src/rendering/include
diff options
context:
space:
mode:
author0scar <qgt268@alumni.ku.dk>2024-02-12 16:26:31 +0000
committer0scar <qgt268@alumni.ku.dk>2024-02-12 21:42:56 +0000
commitf21c8ca19954b45050bb86c381cc7c439383342c (patch)
treebbe5b751605072ef2cca05ca44c3d60f0ed5a40e /src/rendering/include
parenteba4a1312c50bbebca2c50f6566d16b41ea7fb9d (diff)
Add camera
Diffstat (limited to 'src/rendering/include')
-rw-r--r--src/rendering/include/engine/rendering/rendering.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/rendering/include/engine/rendering/rendering.h b/src/rendering/include/engine/rendering/rendering.h
index ed066d6..bc9e07a 100644
--- a/src/rendering/include/engine/rendering/rendering.h
+++ b/src/rendering/include/engine/rendering/rendering.h
@@ -60,6 +60,14 @@ typedef struct {
u32 mvp;
} RenderObject;
+typedef struct {
+ /* Position of the camera in world-space. */
+ vec3 pos;
+ /* Perspective matrix. Initialize with r_perspective_ortho or r_perspective. */
+ /* Alternatively, use `glm_perspective` or `glm_ortho`. */
+ mat4 per;
+} Camera;
+
/* Rendering functions */
void render_begin(Window* w);
void render_present(Window* w);
@@ -67,6 +75,11 @@ void drawcall_reset(void);
void render(Window* w);
/* Misc */
+void r_perspective(f32 ratio, f32 fov, Camera *c);
+void r_perspective_ortho(f32 ratio, f32 sz, Camera *c);
+
+void r_set_camera(Camera* c);
+
//void window_size_callback(GLFWwindow* window, i32 width, i32 height);
//void engine_window_resize_pointers(i32* w, i32* h);
//void engine_window_resize_pointers_reset(void);