diff options
| author | onelin <oscar@nelin.dk> | 2025-04-13 08:33:52 +0000 |
|---|---|---|
| committer | onelin <oscar@nelin.dk> | 2025-04-13 08:41:40 +0000 |
| commit | 5cd270925af707599a3f842e1e969d5074ae80a8 (patch) | |
| tree | f5188ad94131824710c2452cc32fee0bc156af2f /src/rendering | |
| parent | 0dfd07a115ab626c97080dbe87e3c4904f091041 (diff) | |
Remove custom vector implementation
cglm go brr
Diffstat (limited to 'src/rendering')
| -rw-r--r-- | src/rendering/include/engine/rendering/platform.h | 2 | ||||
| -rw-r--r-- | src/rendering/include/engine/rendering/platform_glfw.h | 2 | ||||
| -rw-r--r-- | src/rendering/include/engine/rendering/rendering.h | 9 | ||||
| -rw-r--r-- | src/rendering/include/engine/rendering/window.h | 2 | ||||
| -rw-r--r-- | src/rendering/src/rendering.c | 21 | ||||
| -rw-r--r-- | src/rendering/src/window.c | 24 |
6 files changed, 20 insertions, 40 deletions
diff --git a/src/rendering/include/engine/rendering/platform.h b/src/rendering/include/engine/rendering/platform.h index 5d2408e..9497fdb 100644 --- a/src/rendering/include/engine/rendering/platform.h +++ b/src/rendering/include/engine/rendering/platform.h @@ -5,7 +5,7 @@ extern "C" { #endif -#include <cglm/cglm.h> +#include <cglm/ivec2.h> #include <engine/core/types.h> // TODO: We only need the window once all the garbage in Instance is cleaned up. diff --git a/src/rendering/include/engine/rendering/platform_glfw.h b/src/rendering/include/engine/rendering/platform_glfw.h index cbc3520..056d130 100644 --- a/src/rendering/include/engine/rendering/platform_glfw.h +++ b/src/rendering/include/engine/rendering/platform_glfw.h @@ -5,7 +5,7 @@ extern "C" { #endif -#include <cglm/cglm.h> +#include <cglm/ivec2.h> #include <engine/core/types.h> #include <engine/rendering/platform.h> diff --git a/src/rendering/include/engine/rendering/rendering.h b/src/rendering/include/engine/rendering/rendering.h index d338778..5badec7 100644 --- a/src/rendering/include/engine/rendering/rendering.h +++ b/src/rendering/include/engine/rendering/rendering.h @@ -6,10 +6,9 @@ extern "C" { #endif #include <engine/core/types.h> -#include <engine/utils/vector.h> #include <engine/rendering/window.h> -#include <cglm/cglm.h> +#include <cglm/ivec2.h> /* Definitions */ #define RGBA(_r, _g, _b, _a) ((Engine_color){.r = _r, .g = _g, .b = _b, .a = _a}) @@ -34,7 +33,7 @@ typedef struct { typedef struct { u32 texture_id; - v2_i32 coord; + ivec2 coord; } Sprite; typedef enum { @@ -230,8 +229,8 @@ void r_reset_camera(Camera* c); //void window_size_callback(GLFWwindow* window, i32 width, i32 height); -void engine_draw_sprite(Sprite* s, v2_i32* pos, f32 scale); -void engine_draw_sprite_ex(Sprite* s, v2_i32* pos, f32 scale, +void engine_draw_sprite(Sprite* s, ivec2* pos, f32 scale); +void engine_draw_sprite_ex(Sprite* s, ivec2* pos, f32 scale, Engine_color colormod); void engine_draw_model(RenderObject* o, vec3 pos); diff --git a/src/rendering/include/engine/rendering/window.h b/src/rendering/include/engine/rendering/window.h index 83384bc..10d4ddd 100644 --- a/src/rendering/include/engine/rendering/window.h +++ b/src/rendering/include/engine/rendering/window.h @@ -5,7 +5,7 @@ extern "C" { #endif -#include <cglm/cglm.h> +#include <cglm/ivec2.h> #include <engine/core/types.h> diff --git a/src/rendering/src/rendering.c b/src/rendering/src/rendering.c index 424d3d5..b96e85a 100644 --- a/src/rendering/src/rendering.c +++ b/src/rendering/src/rendering.c @@ -3,6 +3,9 @@ #include <glad/gl.h> #include <GLFW/glfw3.h> +#include <cglm/cam.h> +#include <cglm/vec2.h> +#include <cglm/mat4.h> #include <engine/engine.h> @@ -593,7 +596,7 @@ void r_reset_camera(Camera* c) { } } -void engine_draw_sprite(Sprite* s, v2_i32* pos, f32 scale) { +void engine_draw_sprite(Sprite* s, ivec2* pos, f32 scale) { if (drawcall_len + 1 >= drawcall_limit) return; #ifdef _DEBUG if (s == NULL) __asm__("int3;"); @@ -602,14 +605,14 @@ void engine_draw_sprite(Sprite* s, v2_i32* pos, f32 scale) { (RenderDrawCall){.type = RenderDrawCallType_Sprite, .data.sprite = { .sprite = s, - .x = pos->x, - .y = pos->y, + .x = *pos[0], + .y = *pos[1], .scale = scale, //.mod = {0xFF, 0xFF, 0xFF, 0xFF}, }}; } -void engine_draw_sprite_ex(Sprite* s, v2_i32* pos, f32 scale, +void engine_draw_sprite_ex(Sprite* s, ivec2* pos, f32 scale, Engine_color colormod) { if (drawcall_len + 1 >= drawcall_limit) return; #ifdef _DEBUG @@ -619,8 +622,8 @@ void engine_draw_sprite_ex(Sprite* s, v2_i32* pos, f32 scale, .type = RenderDrawCallType_Sprite, .data.sprite = { .sprite = s, - .x = pos->x, - .y = pos->y, + .x = *pos[0], + .y = *pos[1], .scale = scale, //.mod = {colormod.r, colormod.g, colormod.b, colormod.a}, }}; @@ -650,9 +653,9 @@ Sprite sprite_new(u64 tid, u8 coord) { //((struct Resources*)GLOBAL_PLATFORM->data)->textures[tid]->tilesize; return (Sprite){ .texture_id = (u32)tid, - (v2_i32){ - .x = ts * (coord & 0x0F), - .y = ts * ((coord & 0xF0) >> 4), + { + ts * (coord & 0x0F), + ts * ((coord & 0xF0) >> 4), }}; } diff --git a/src/rendering/src/window.c b/src/rendering/src/window.c index e784158..e78ede0 100644 --- a/src/rendering/src/window.c +++ b/src/rendering/src/window.c @@ -1,4 +1,3 @@ -#include <stdio.h> #include <time.h> /* TODO: REMOVE THIS INCLUSION */ @@ -15,21 +14,10 @@ #undef GLFW_INCLUDE_NONE #include <GLFW/glfw3.h> -#include <cglm/cglm.h> +#include <cglm/ivec2.h> extern Instance* GLOBAL_PLATFORM; - -/* Should honestly just write my own */ -static inline u64 glfw_gettime_msec(void) { - return (u64)(glfwGetTime() * 1000.0); -} - -/* Should honestly just write my own */ -static inline u64 glfw_gettime_usec(void) { - return (u64)(glfwGetTime() * 1000000.0); -} - static inline u64 platform_get_time_usec(void) { struct timespec t; int res = clock_gettime(CLOCK_MONOTONIC, &t); @@ -60,13 +48,3 @@ void get_mousepos(double *x, double *y) { } } - -bool window_should_close(Window* w) { - switch(w->framework) { - case WINDOW_FRAMEWORK_GLFW: - return glfwWindowShouldClose(w->window); - break; - default: - return false; - } -} |
