diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-11-26 15:53:52 +0200 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-11-29 19:13:54 +0200 |
commit | b2ccbdffc1d85e320ef55c8994fae022dcef96f8 (patch) | |
tree | 7564bbd4e4af4a1b35096cc0a39ab084d720c158 /src/map.cpp | |
parent | 769cc9879f306055e683bf720b0877a364e82ba5 (diff) | |
download | minetest-b2ccbdffc1d85e320ef55c8994fae022dcef96f8.tar.gz minetest-b2ccbdffc1d85e320ef55c8994fae022dcef96f8.tar.bz2 minetest-b2ccbdffc1d85e320ef55c8994fae022dcef96f8.zip |
Make map generator as much threaded as possible (not much benefit with current generator because of small generator chunk size (a single MapBlock))
Diffstat (limited to 'src/map.cpp')
-rw-r--r-- | src/map.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/map.cpp b/src/map.cpp index fd0f1e313..ab394769b 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -2162,7 +2162,17 @@ MapBlock* ServerMap::finishBlockMake(mapgen::BlockMakeData *data, /*infostream<<"Resulting vmanip:"<<std::endl; data->vmanip.print(infostream);*/ - + + // Make sure affected blocks are loaded + for(s16 x=-1; x<=1; x++) + for(s16 z=-1; z<=1; z++) + for(s16 y=-1; y<=1; y++) + { + v3s16 p(blockpos.X+x, blockpos.Y+y, blockpos.Z+z); + // Load from disk if not already in memory + emergeBlock(p, false); + } + /* Blit generated stuff to map NOTE: blitBackAll adds nearly everything to changed_blocks |