From 7f3aa1cff755d21d972457b05c140cf465b9fa19 Mon Sep 17 00:00:00 2001 From: DrNuget Date: Wed, 7 Jan 2026 04:58:54 +0200 Subject: some basic 3D rendering and the base for chunk generation etc. --- src/engine/M_block.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/engine/M_block.c (limited to 'src/engine/M_block.c') diff --git a/src/engine/M_block.c b/src/engine/M_block.c new file mode 100644 index 0000000..0f3fb27 --- /dev/null +++ b/src/engine/M_block.c @@ -0,0 +1,33 @@ +#include "M_block.h" + +void M_createBlock(M_Block *block, unsigned short type) +{ + block->type = type; +} + +unsigned short M_createBlockType(M_Object obj, M_BlockAtlas *atl) +{ + M_BlockType block_type; + block_type.obj = obj; + + if (atl->block_amount >= atl->size) { + atl->size += 10; + atl->blocks = realloc(atl->blocks, atl->size*sizeof(M_BlockType)); + } + atl->blocks[atl->block_amount++] = block_type; + return atl->block_amount; +} + +M_BlockAtlas M_createBlockAtlas() +{ + return (M_BlockAtlas){ + .blocks = malloc(10*sizeof(M_BlockType)), + .block_amount = 0, + .size = 10 + }; +} + +void M_killBlockAtlas(M_BlockAtlas *atl) +{ + free(atl->blocks); +} -- cgit v1.2.3