diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2017-06-06 09:05:13 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2018-03-19 13:06:16 +0000 |
commit | 4c3f6cb3d396d45d0a463c1222bb4185b9a015ab (patch) | |
tree | 5698e4515eeb2d17fda101b8c8a140cb424a34dd /src/render/renderers/opengl/renderer/renderer.cpp | |
parent | 013be08f1b5b5884922ea5723c6dc34e27179ac7 (diff) |
SendRenderCaptureJob: remove hard dependency to Renderer
This will allow it to be reused by the various renderers
Change-Id: I5707496a40b91077a363734cc72af820ec5ca8c4
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Diffstat (limited to 'src/render/renderers/opengl/renderer/renderer.cpp')
-rw-r--r-- | src/render/renderers/opengl/renderer/renderer.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/render/renderers/opengl/renderer/renderer.cpp b/src/render/renderers/opengl/renderer/renderer.cpp index 85ac4d2ec..5c99a3984 100644 --- a/src/render/renderers/opengl/renderer/renderer.cpp +++ b/src/render/renderers/opengl/renderer/renderer.cpp @@ -180,7 +180,7 @@ Renderer::Renderer(QRenderAspect::RenderType type) , m_calculateBoundingVolumeJob(Render::CalculateBoundingVolumeJobPtr::create()) , m_updateWorldBoundingVolumeJob(Render::UpdateWorldBoundingVolumeJobPtr::create()) , m_updateTreeEnabledJob(Render::UpdateTreeEnabledJobPtr::create()) - , m_sendRenderCaptureJob(Render::SendRenderCaptureJobPtr::create(this)) + , m_sendRenderCaptureJob(Render::SendRenderCaptureJobPtr::create()) , m_sendBufferCaptureJob(Render::SendBufferCaptureJobPtr::create()) , m_updateSkinningPaletteJob(Render::UpdateSkinningPaletteJobPtr::create()) , m_updateLevelOfDetailJob(Render::UpdateLevelOfDetailJobPtr::create()) @@ -1565,7 +1565,14 @@ QVector<Qt3DCore::QAspectJobPtr> Renderer::renderBinJobs() renderBinJobs.push_back(m_updateSkinningPaletteJob); renderBinJobs.push_back(m_updateLevelOfDetailJob); renderBinJobs.push_back(m_cleanupJob); - renderBinJobs.push_back(m_sendRenderCaptureJob); + + const QVector<Qt3DCore::QNodeId> pendingCaptureIds = takePendingRenderCaptureSendRequests(); + if (pendingCaptureIds.size() > 0) { + m_sendRenderCaptureJob->setPendingCaptureRequests(pendingCaptureIds); + renderBinJobs.push_back(m_sendRenderCaptureJob); + } + + renderBinJobs.push_back(m_sendBufferCaptureJob); renderBinJobs.append(bufferJobs); |