summaryrefslogtreecommitdiff
path: root/src/map.cpp
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2011-11-26 15:53:52 +0200
committerPerttu Ahola <celeron55@gmail.com>2011-11-29 19:13:54 +0200
commitb2ccbdffc1d85e320ef55c8994fae022dcef96f8 (patch)
tree7564bbd4e4af4a1b35096cc0a39ab084d720c158 /src/map.cpp
parent769cc9879f306055e683bf720b0877a364e82ba5 (diff)
downloadminetest-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.cpp12
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