#pragma once #include "backend.h" #include "defs.h" #include #include uint32_t ve_rgb(Color color); void ve_set_pixel(Framebuffer *fb, i32 x, i32 y, Color color); void ve_draw_line(Framebuffer *fb, V2 p0, V2 p1, Color color); void ve_draw_line_fast(Framebuffer *fb, V2 p0, V2 p1, Color color); void ve_draw_line_aa(Framebuffer *fb, V2 p0, V2 p1, Color color); void ve_draw_bezier(Framebuffer *fb, V2 p0, V2 p1, V2 p2, Color color); void ve_draw_triangle_wireframe(Framebuffer *fb, V2 p0, V2 p1, V2 p2, Color color); void ve_draw_triangle(Framebuffer *fb, V2 p0, V2 p1, V2 p2, Color color); void ve_draw_triangle_gradient(Framebuffer *fb, V2 p0, V2 p1, V2 p2, Color colors[3]); void ve_draw_cirle(Framebuffer *fb, V2 p0, int r, Color color); void ve_draw_ellipse(Framebuffer *fb, V2 p0, V2 p1, Color color); V2 v2_rotate(V2 v, V2 center, float angle); V2 ve_interpolate(V2 start, V2 end, f32 t); void ve_render_bitmap_char(Framebuffer *fb, char c, V2 p, Color color, u8 font_size); void ve_render_bitmap_str(Framebuffer *fb, char *c, V2 p, Color color, u8 font_size); void ve_render_fps(ve_context *ctx); void ve_clear(Framebuffer *fb, Color color);