summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSvenn-Arne Dragly <s@dragly.com>2018-02-03 14:32:38 +0100
committerSvenn-Arne Dragly <svenn-arne.dragly@qt.io>2018-02-09 10:26:33 +0000
commite1d1a59eb04f8b17582571275073a6cfa10e9e32 (patch)
tree76cb097b72294ec26b423e9a8d888edcd0d57ede
parent370201c3afdbe976a988a6bb840cce832c719f93 (diff)
Move calculateBoundingVolumeJob dependency on updateTreeEnabledJob5.10
Move it to renderBinJobs because we clear all dependencies of calculateBoundingVolumeJob at the start of this function. Change-Id: Idebe10349181d95813e47e85b2e6f4f2ae39e615 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
-rw-r--r--src/render/backend/renderer.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/render/backend/renderer.cpp b/src/render/backend/renderer.cpp
index 0b975a3d3..095818328 100644
--- a/src/render/backend/renderer.cpp
+++ b/src/render/backend/renderer.cpp
@@ -215,12 +215,12 @@ Renderer::Renderer(QRenderAspect::RenderType type)
// Create jobs to update transforms and bounding volumes
// We can only update bounding volumes once all world transforms are known
- m_calculateBoundingVolumeJob->addDependency(m_updateTreeEnabledJob);
m_updateWorldBoundingVolumeJob->addDependency(m_worldTransformJob);
m_updateWorldBoundingVolumeJob->addDependency(m_calculateBoundingVolumeJob);
m_expandBoundingVolumeJob->addDependency(m_updateWorldBoundingVolumeJob);
m_updateShaderDataTransformJob->addDependency(m_worldTransformJob);
m_pickBoundingVolumeJob->addDependency(m_expandBoundingVolumeJob);
+ // m_calculateBoundingVolumeJob's dependency on m_updateTreeEnabledJob is set in renderBinJobs
// Ensures all skeletons are loaded before we try to update them
m_updateSkinningPaletteJob->addDependency(m_syncSkeletonLoadingJob);
@@ -1584,8 +1584,12 @@ QVector<Qt3DCore::QAspectJobPtr> Renderer::renderBinJobs()
m_dirtyBits = 0;
const bool entitiesEnabledDirty = dirtyBitsForFrame & AbstractRenderer::EntityEnabledDirty;
- if (entitiesEnabledDirty)
+ if (entitiesEnabledDirty) {
renderBinJobs.push_back(m_updateTreeEnabledJob);
+ // This dependency is added here because we clear all dependencies
+ // at the start of this function.
+ m_calculateBoundingVolumeJob->addDependency(m_updateTreeEnabledJob);
+ }
if (dirtyBitsForFrame & AbstractRenderer::TransformDirty) {
renderBinJobs.push_back(m_worldTransformJob);