From ef22c0206f225dbccd67bff9fb888867c63039b3 Mon Sep 17 00:00:00 2001 From: x2048 Date: Thu, 26 May 2022 22:28:34 +0200 Subject: Force-update shadows when the world is changed (#12364) --- src/client/client.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/client/client.cpp') diff --git a/src/client/client.cpp b/src/client/client.cpp index 8ab96b7d1..e078dc530 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -530,6 +530,7 @@ void Client::step(float dtime) { int num_processed_meshes = 0; std::vector blocks_to_ack; + bool force_update_shadows = false; while (!m_mesh_update_thread.m_queue_out.empty()) { num_processed_meshes++; @@ -556,9 +557,11 @@ void Client::step(float dtime) if (is_empty) delete r.mesh; - else + else { // Replace with the new mesh block->mesh = r.mesh; + force_update_shadows = true; + } } } else { delete r.mesh; @@ -583,6 +586,10 @@ void Client::step(float dtime) if (num_processed_meshes > 0) g_profiler->graphAdd("num_processed_meshes", num_processed_meshes); + + auto shadow_renderer = RenderingEngine::get_shadow_renderer(); + if (shadow_renderer && force_update_shadows) + shadow_renderer->setForceUpdateShadowMap(); } /* -- cgit v1.2.3 From 85c824ed136269ee3ee0b650406ce80c8a60c014 Mon Sep 17 00:00:00 2001 From: sfan5 Date: Thu, 26 May 2022 20:47:16 +0200 Subject: Make sure real disconnect reason isn't overwritten bug introduced in 2f32044273d107e82fb1c35d4a0f616fa480cdf0 --- src/client/client.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/client/client.cpp') diff --git a/src/client/client.cpp b/src/client/client.cpp index e078dc530..93a403e81 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -803,7 +803,7 @@ void Client::deletingPeer(con::Peer *peer, bool timeout) m_access_denied = true; if (timeout) m_access_denied_reason = gettext("Connection timed out."); - else + else if (m_access_denied_reason.empty()) m_access_denied_reason = gettext("Connection aborted (protocol error?)."); } -- cgit v1.2.3