#ifndef WORLD_H #define WORLD_H #include #include #include #include "Chunk.h" class World { public: std::unordered_map chunks; World(); void set_voxel(glm::ivec3 position, VoxelKind kind); std::optional> raycast_voxel(glm::vec3 start, glm::vec3 direction, float max_dist); VoxelKind get_voxel(glm::ivec3 position); Chunk* get_or_create_chunk(glm::ivec3 chunk_position); }; #endif WORLD_H