Files
handmadehero/handmade_tile.h
T
2026-07-14 13:21:04 -07:00

49 lines
879 B
C

#ifndef HANDMADE_TILE_H_SENTRY
#define HANDMADE_TILE_H_SENTRY
#include "handmade_math.h"
struct tile_map_difference {
struct v2 dXY;
float dZ;
};
struct tile_map_position {
unsigned int AbsTileX;
unsigned int AbsTileY;
unsigned int AbsTileZ;
/* NOTE: X and Y relative to tile center. */
struct v2 Offset;
};
struct tile_chunk_position {
unsigned int TileChunkX;
unsigned int TileChunkY;
unsigned int TileChunkZ;
unsigned int RelTileX;
unsigned int RelTileY;
};
struct tile_chunk {
unsigned int *Tiles;
};
struct tile_map {
unsigned int ChunkShift;
unsigned int ChunkMask;
unsigned int ChunkDim;
float TileSideInMeters;
/* TODO: Real sparseness. */
unsigned int TileChunkCountX;
unsigned int TileChunkCountY;
unsigned int TileChunkCountZ;
struct tile_chunk *TileChunks;
};
#endif