#pragma once // Defines // typedef struct{ unsigned char r; unsigned char g; unsigned char b; unsigned char a; }Color; #define WHITE (Color){255, 255, 255, 255} #define BLACK (Color){0, 0, 0, 255} typedef int i32; typedef long long i64; typedef unsigned int u32; typedef unsigned long long u64; typedef float f32; typedef double f64; // 24.8 format typedef i32 fx32; #define FIXED_POINT_BITS 8 #define FIXED_POINT_ONE (1 << FIXED_POINT_BITS) #define TO_FIXED(x) ((fx32)(x) << FIXED_POINT_BITS) #define FROM_FIXED(x) ((x) >> FIXED_POINT_BITS) // Texture // int load_new_tex(const char* path); void draw_texture(int idx, int x, int y); void unload_tex(int idx); void unload_active_textures(void); // Shader // int load_new_shader(const char* path); void set_active_shader(int idx); void reset_active_shader(void); void unload_shader(int idx); void unload_active_shaders(void); // Text // void draw_text(const char* txt, int x, int y, int size, Color col);