From 4f23778e53db9bfa67bd9d15033c98f1b14b3202 Mon Sep 17 00:00:00 2001 From: RealBadAngel Date: Mon, 8 Dec 2014 02:34:29 +0100 Subject: [PATCH] Fix lighting artifacts (Issue #1887). --- src/client.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/client.cpp b/src/client.cpp index b05787b36..5b4eb7d10 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -2348,10 +2348,8 @@ void Client::removeNode(v3s16 p) i = modified_blocks.begin(); i != modified_blocks.end(); ++i) { - addUpdateMeshTask(i->first, false, false); + addUpdateMeshTaskWithEdge(i->first, false, true); } - // add urgent task to update the modified node - addUpdateMeshTaskForNode(p, false, true); } void Client::addNode(v3s16 p, MapNode n, bool remove_metadata) @@ -2372,7 +2370,7 @@ void Client::addNode(v3s16 p, MapNode n, bool remove_metadata) i = modified_blocks.begin(); i != modified_blocks.end(); ++i) { - addUpdateMeshTask(i->first, false, false); + addUpdateMeshTaskWithEdge(i->first, false, true); } } @@ -2621,9 +2619,7 @@ void Client::addUpdateMeshTask(v3s16 p, bool ack_to_server, bool urgent) void Client::addUpdateMeshTaskWithEdge(v3s16 blockpos, bool ack_to_server, bool urgent) { try{ - v3s16 p = blockpos + v3s16(0,0,0); - //MapBlock *b = m_env.getMap().getBlockNoCreate(p); - addUpdateMeshTask(p, ack_to_server, urgent); + addUpdateMeshTask(blockpos, ack_to_server, urgent); } catch(InvalidPositionException &e){} @@ -2651,8 +2647,7 @@ void Client::addUpdateMeshTaskForNode(v3s16 nodepos, bool ack_to_server, bool ur v3s16 blockpos_relative = blockpos * MAP_BLOCKSIZE; try{ - v3s16 p = blockpos + v3s16(0,0,0); - addUpdateMeshTask(p, ack_to_server, urgent); + addUpdateMeshTask(blockpos, ack_to_server, urgent); } catch(InvalidPositionException &e){}