aboutsummaryrefslogtreecommitdiff
path: root/builtin/async
diff options
context:
space:
mode:
authorAuke Kok <sofar@foo-projects.org>2016-03-30 07:50:10 -0700
committerkwolekr <kwolekr@minetest.net>2016-04-11 00:01:28 -0400
commitd7908ee49480caaab63d05c8a53d93103579d7a9 (patch)
tree0dbea671ae937fa4558d2bf09355da014f21bf6a /builtin/async
parent2eeb62057a9e08def6a0f013e3ca5d84768d1566 (diff)
downloadminetest-d7908ee49480caaab63d05c8a53d93103579d7a9.tar.gz
minetest-d7908ee49480caaab63d05c8a53d93103579d7a9.tar.bz2
minetest-d7908ee49480caaab63d05c8a53d93103579d7a9.zip
Convert nodeupdate to non-recursive
This took me a while to figure out. We no longer visit all 9 block around and with the touched node, but instead visit adjacent plus self. We then walk -non- recursively through all neigbors and if they cause a nodeupdate, we just keep walking until it ends. On the way back we prune the tail. I've tested this with 8000+ sand nodes. Video result is here: https://youtu.be/liKKgLefhFQ Took ~ 10 seconds to process and return to normal.
Diffstat (limited to 'builtin/async')
0 files changed, 0 insertions, 0 deletions