X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fchunk.cpp;h=70a2563ae12c490379959bd37a35fc955db69996;hb=f90ec88e6728ce865bcf892c810a36abd90d9001;hp=51694221b8a1c4acb359feb3a7b05ca5efe5024e;hpb=774253e509ce13881229efda8849bf6f3c47b665;p=blank.git diff --git a/src/chunk.cpp b/src/chunk.cpp index 5169422..70a2563 100644 --- a/src/chunk.cpp +++ b/src/chunk.cpp @@ -470,15 +470,15 @@ glm::mat4 Chunk::ToTransform(int idx) const { } -ChunkLoader::ChunkLoader(const BlockTypeRegistry ®, const Generator &gen) +ChunkLoader::ChunkLoader(const Config &config, const BlockTypeRegistry ®, const Generator &gen) : base(0, 0, 0) , reg(reg) , gen(gen) , loaded() , to_generate() , to_free() -, load_dist(6) -, unload_dist(8) { +, load_dist(config.load_dist) +, unload_dist(config.unload_dist) { } @@ -618,8 +618,12 @@ void ChunkLoader::Rebase(const Chunk::Pos &new_base) { } } // add missing new chunks + GenerateSurrounding(base); +} + +void ChunkLoader::GenerateSurrounding(const Chunk::Pos &pos) { const Chunk::Pos offset(load_dist, load_dist, load_dist); - Generate(base - offset, base + offset); + Generate(pos - offset, pos + offset); } void ChunkLoader::Update() {