summaryrefslogtreecommitdiff
path: root/src/defaultsettings.cpp
diff options
context:
space:
mode:
authorPerttu Ahola <celeron55@gmail.com>2017-04-15 10:55:52 +0300
committerceleron55 <celeron55@gmail.com>2017-04-17 14:58:29 +0300
commit04cc9de8f2fbcb11f133c88f02fc11504b3ea6f3 (patch)
treeed13d87b714cb58e1e318458bdfcb5ed9e827819 /src/defaultsettings.cpp
parent4323ad163f8d8217cbfc926cf212d02386ae0646 (diff)
downloadminetest-04cc9de8f2fbcb11f133c88f02fc11504b3ea6f3.tar.gz
minetest-04cc9de8f2fbcb11f133c88f02fc11504b3ea6f3.tar.bz2
minetest-04cc9de8f2fbcb11f133c88f02fc11504b3ea6f3.zip
MeshUpdateQueue: Add a MapBlock cache that minimizes the amount of MapBlock copying done in the main thread
Cache size is configurable by the meshgen_block_cache_size (default 20 MB). New profiler stats: - MeshUpdateQueue MapBlock cache hit % - MeshUpdateQueue MapBlock cache size kB Removes one type of stutter that was seen on the client when received MapBlocks were being handled. (the "MeshMakeData::fill" stutter) Kind of related to at least #5239 Originally preceded by these commits, now includes them: - Move the mesh generator thread into src/mesh_generator_thread.{cpp,h} - mesh_generator_thread.cpp: Update code style - MeshUpdateThread: Modify interface to house a different implementation: Actual functionality will be changed by next commits. - MeshMakeData: Add fillBlockData() interface (so that caller can fill in stuff from eg. a MapBlock cache)
Diffstat (limited to 'src/defaultsettings.cpp')
-rw-r--r--src/defaultsettings.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp
index c6ced5931..573b5e2d8 100644
--- a/src/defaultsettings.cpp
+++ b/src/defaultsettings.cpp
@@ -39,6 +39,7 @@ void set_default_settings(Settings *settings)
settings->setDefault("sound_volume", "0.8");
settings->setDefault("enable_mesh_cache", "false");
settings->setDefault("mesh_generation_interval", "0");
+ settings->setDefault("meshgen_block_cache_size", "20");
settings->setDefault("enable_vbo", "true");
settings->setDefault("free_move", "false");
settings->setDefault("fast_move", "false");