From 1761f0b3672885e1e1a62ce654ad79328e4770cb Mon Sep 17 00:00:00 2001 From: milek7 Date: Thu, 18 Oct 2018 22:34:58 +0200 Subject: [PATCH] fix camera-lights lag --- renderer.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/renderer.cpp b/renderer.cpp index 7b522a21..446f5263 100644 --- a/renderer.cpp +++ b/renderer.cpp @@ -404,7 +404,6 @@ void opengl_renderer::Render_pass(rendermode const Mode) break; } - Update_Lights(simulation::Lights); scene_ubs.time = Timer::GetTime(); scene_ubs.projection = OpenGLMatrices.data(GL_PROJECTION); scene_ubo->update(scene_ubs); @@ -431,7 +430,7 @@ void opengl_renderer::Render_pass(rendermode const Mode) Render_pass(rendermode::shadows); if (!FreeFlyModeFlag) Render_pass(rendermode::cabshadows); - setup_pass(m_renderpass, Mode); // restore draw mode. TBD, TODO: render mode stack + setup_pass(m_renderpass, Mode); // restore draw mode. TBD, TODO: render mode stack Timer::subsystem.gfx_shadows.stop(); glDebug("render shadowmap end"); @@ -1576,6 +1575,8 @@ void opengl_renderer::Render(scene::basic_region *Region) { case rendermode::color: { + Update_Lights(simulation::Lights); + Render(std::begin(m_sectionqueue), std::end(m_sectionqueue)); // draw queue is filled while rendering sections if (EditorModeFlag) @@ -3542,7 +3543,7 @@ void opengl_renderer::Update_Lights(light_array &Lights) return false; } if (Right.intensity == 0.f) - { + { return true; } // ...otherwise prefer closer and/or brigher light sources