blob: b19265d9357f421f5695300ac2c06c89c9e90078 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#pragma once
#include "cglm/types.h"
#include "glad/glad.h"
#include "shader.h"
struct block {
vec3 coords;
GLuint _vao;
GLuint _vbo;
GLuint _ebo;
int _vertex_count;
mat4 model;
float angle;
};
/**
* Create a "block" object, which is the building blocks of this world.
* Blocks belong in chunks, and chunks belong in worlds. vec3 pos here is the coordinates of the block in WORLD space.
* However, a common method to render these blocks will be that the chunk will set the coordinates in "chunk space", and
* on a chunk_load, we will translate the blocks to wherever the chunk is loaded
*
*
*/
int block_init(vec3 pos, struct block* blk);
int block_draw(struct block* blk, struct shader* shader);
void block_debug(struct block* blk);
void block_update(struct block* blk);
|