#ifndef WINDOW_H #define WINDOW_H #include "c_cpp_aliases/aliases.h" #include "vector/vec.h" #include #include typedef struct { u8 r; u8 g; u8 b; u8 a; } colour_t; typedef struct { u32 width; u32 height; u32 half_width; u32 half_height; const char *title; SDL_Window *window; SDL_Surface *front_buffer; SDL_Surface *back_buffer; } window_t; bool init_window(window_t *wnd, u32 width, u32 height, const char *title); void close_window(window_t *wnd); void clear_window(window_t *wnd, colour_t colour); void set_pixel(window_t *wnd, i32 x, i32 y, colour_t colour); void swap_buffers(window_t *wnd); vec3f_t window_to_viewport(window_t *wnd, i32 x, i32 y, vec3f_t viewport); #endif // !WINDOW_H