diff --git a/include/misc/misc_utils.h b/include/misc/misc_utils.h new file mode 100644 index 0000000..2b91316 --- /dev/null +++ b/include/misc/misc_utils.h @@ -0,0 +1,6 @@ +#ifndef MISC_UTILS_H +#define MISC_UTILS_H + +#define ARR_LEN(ARR) sizeof(ARR) / sizeof(ARR[0]) + +#endif // !MISC_UTILS_H diff --git a/src/rasteriser/main.c b/src/rasteriser/main.c index ccccd5b..617b579 100644 --- a/src/rasteriser/main.c +++ b/src/rasteriser/main.c @@ -1,3 +1,4 @@ +#include "misc/misc_utils.h" #include "rasteriser/rasteriser.h" #include "vector/vec.h" #include "window/window.h" @@ -22,8 +23,22 @@ int main(void) { // i32 h_min = ((i32)window.half_height) * -1; // i32 h_max = (i32)window.half_height; - vec2i_t a = {.x = -300, .y = 0}; - vec2i_t b = {.x = 300, .y = 250}; + line_t lines[] = { + (line_t){ + (vec2i_t){.x = -300, .y = 0}, + (vec2i_t){.x = 300, .y = 250}, + }, + (line_t){ + (vec2i_t){.x = -200, .y = -100}, + (vec2i_t){.x = 240, .y = 120}, + }, + (line_t){ + (vec2i_t){.x = -50, .y = -200}, + (vec2i_t){.x = 60, .y = 240}, + }, + }; + + u32 count = ARR_LEN(lines); while (running) { while (SDL_PollEvent(&event)) { @@ -36,7 +51,9 @@ int main(void) { clear_window(&window, bg); - draw_line(&window, a, b, (colour_t){.colour = 0xffffffff}); + for (u32 i = 0; i < count; ++i) { + draw_line(&window, lines[i], (colour_t){.colour = 0xffffffff}); + } swap_buffers(&window); } diff --git a/src/scene/scene.c b/src/scene/scene.c index 08e8d47..e1ceefe 100644 --- a/src/scene/scene.c +++ b/src/scene/scene.c @@ -1,7 +1,6 @@ #include "scene/scene.h" #include "c_cpp_aliases/aliases.h" - -#define ARR_LEN(ARR) sizeof(ARR) / sizeof(ARR[0]) +#include "misc/misc_utils.h" internal const sphere_t spheres[] = { (sphere_t){