summaryrefslogtreecommitdiffstats
path: root/src/render/frontend
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2020-03-27 16:15:47 +0000
committerMike Krus <mike.krus@kdab.com>2020-03-27 16:28:06 +0000
commit62d11afb41e0c3b8a21b4a307cebdfc406ecdf98 (patch)
tree535445f3a12bd9ddb1b48c830e29ab7601a33335 /src/render/frontend
parenteaf4b353fb317a96d01b65fce90ca2e57af4b829 (diff)
Fix job dependencies
Got dropped in previous refactoring Change-Id: I4fdffd329f79b2a650c4780b693a665f81a9770b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/render/frontend')
-rw-r--r--src/render/frontend/qrenderaspect.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/render/frontend/qrenderaspect.cpp b/src/render/frontend/qrenderaspect.cpp
index f9aa4ba96..19727f42b 100644
--- a/src/render/frontend/qrenderaspect.cpp
+++ b/src/render/frontend/qrenderaspect.cpp
@@ -320,6 +320,8 @@ QRenderAspectPrivate::QRenderAspectPrivate(QRenderAspect::RenderType type)
m_updateWorldBoundingVolumeJob->addDependency(m_calculateBoundingVolumeJob);
m_expandBoundingVolumeJob->addDependency(m_updateWorldBoundingVolumeJob);
m_updateLevelOfDetailJob->addDependency(m_expandBoundingVolumeJob);
+ m_pickBoundingVolumeJob->addDependency(m_expandBoundingVolumeJob);
+ m_rayCastingJob->addDependency(m_expandBoundingVolumeJob);
}
/*! \internal */
@@ -684,6 +686,9 @@ QVector<Qt3DCore::QAspectJobPtr> QRenderAspect::jobsToExecute(qint64 time)
const QVector<QAspectJobPtr> geometryJobs = d->createGeometryRendererJobs();
jobs.append(geometryJobs);
+ const QVector<QAspectJobPtr> preRenderingJobs = d->createPreRendererJobs();
+ jobs.append(preRenderingJobs);
+
// Don't spawn any rendering jobs, if the renderer decides to skip this frame
// Note: this only affects rendering jobs (jobs that load buffers,
// perform picking,... must still be run)
@@ -740,9 +745,6 @@ QVector<Qt3DCore::QAspectJobPtr> QRenderAspect::jobsToExecute(qint64 time)
if (layersDirty)
jobs.push_back(d->m_updateEntityLayersJob);
- const QVector<QAspectJobPtr> preRenderingJobs = d->createPreRendererJobs();
- jobs.append(preRenderingJobs);
-
const QVector<QAspectJobPtr> renderBinJobs = d->m_renderer->renderBinJobs();
jobs.append(renderBinJobs);
}
@@ -881,7 +883,7 @@ QVector<QAspectJobPtr> QRenderAspectPrivate::createPreRendererJobs() const
const auto frameMouseEvents = m_pickEventFilter->pendingMouseEvents();
const auto frameKeyEvents = m_pickEventFilter->pendingKeyEvents();
- m_renderer->setPendingEvents(frameMouseEvents, m_pickEventFilter->pendingKeyEvents());
+ m_renderer->setPendingEvents(frameMouseEvents, frameKeyEvents);
auto jobs = m_renderer->preRenderingJobs();