add rotating 3d cube

This commit is contained in:
2026-10-14 02:52:30 +02:00
parent 403ddc132d
commit ad6536bdab
5 changed files with 349 additions and 10 deletions
+6 -2
View File
@@ -9,6 +9,10 @@ typedef enum {
OVERDRAW
} framebuffer_e;
typedef struct {
double x, y;
} v2;
typedef struct {
SDL_Event event;
bool is_running;
@@ -17,9 +21,9 @@ typedef struct {
SDL_Rect dirty_rect;
uint16_t width, height;
// base layer ~ layer 0
uint32_t *framebuffer_base;
uint32_t *framebuffer_base;
// layer on top of that ~ layer 1
uint32_t *framebuffer_overdraw;
uint32_t *framebuffer_overdraw;
} game_state_t;
extern game_state_t *game_state;
+21 -4
View File
@@ -4,16 +4,33 @@
#include <stdint.h>
void
void
put_pixel(
framebuffer_e framebuffer,
unsigned int x,
unsigned int y,
unsigned int x,
unsigned int y,
uint32_t color
);
void
void
clear_framebuffer(
framebuffer_e framebuffer,
uint32_t color
);
void
put_line(
v2 a,
v2 b,
framebuffer_e framebuffer,
uint32_t color
);
void
put_triangle(
v2 a,
v2 b,
v2 c,
framebuffer_e framebuffer,
uint32_t color
);