mainmenu_csm/builtin
Perttu Ahola a72a00ff52
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)
2022-05-21 16:14:40 +02:00
..
async Use "core" namespace internally 2022-05-21 16:11:41 +02:00
client Allow escaping chatcommands and add missing calls to gettext. (#5565) 2022-05-21 16:14:40 +02:00
common Use more gettext (#5553) 2022-05-21 16:14:39 +02:00
fstk Faster insertion into table 2022-05-21 16:13:23 +02:00
game Implement delayed server shutdown with cancelation (#4664) 2022-05-21 16:14:40 +02:00
mainmenu Multiplayer menu: fix attempt to open nonexistant image 2022-05-21 16:14:22 +02:00
profiler Builtin/profiler: Replace game profiler (#4245) 2022-05-21 16:13:44 +02:00
init.lua Improve security for client-sided mods (#5100) 2022-05-21 16:14:28 +02:00
settingtypes.txt MeshUpdateQueue: Add a MapBlock cache that minimizes the amount of MapBlock copying done in the main thread 2022-05-21 16:14:40 +02:00