diff options
Diffstat (limited to 'src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp')
-rw-r--r-- | src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp b/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp index af1d545ed..6d6ae7853 100644 --- a/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp +++ b/src/render/renderers/opengl/jobs/renderviewcommandupdaterjob.cpp @@ -54,8 +54,11 @@ int renderViewInstanceCounter = 0; RenderViewCommandUpdaterJob::RenderViewCommandUpdaterJob() : Qt3DCore::QAspectJob() + , m_offset(0) + , m_count(0) , m_renderView(nullptr) , m_renderer(nullptr) + , m_renderables(nullptr) { SET_JOB_RUN_STAT_TYPE(this, JobTypes::RenderCommandUpdater, renderViewInstanceCounter++); } @@ -65,12 +68,10 @@ void RenderViewCommandUpdaterJob::run() // Build RenderCommand should perform the culling as we have no way to determine // if a child has a mesh in the view frustum while its parent isn't contained in it. if (!m_renderView->noDraw()) { + if (m_count == 0) + return; // Update Render Commands (Uniform Change, Depth Change) - m_renderView->updateRenderCommand(m_renderables); - - // Copy commands out of cached -> ensures we can submit them for rendering - // while cache is rebuilt or modified for next frame - m_commands = m_renderables.commands; + m_renderView->updateRenderCommand(m_renderables, m_offset, m_count); } } |