add rotating 3d cube
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user