diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2017-08-18 09:22:49 +0200 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2017-08-18 13:56:05 +0000 |
commit | 4b9ba03e0b8c5bb60410ea016d8436a57c02e6f8 (patch) | |
tree | 55024ff09acf981c4044125675b95e9460299085 /src/render/jobs/renderviewjobutils.cpp | |
parent | 10fcb22c79387b957fe3e6663b23f75d693531d6 (diff) |
Fix and improve layer filtering
We now handle the case where multiple LayerFilter nodes are nested
within the same FrameGraphBranch. We also have improved the Accept/Discard
into Accept Any/All and Discard Any/All which should now handle all
filtering cases.
We now build a list of layerIds stored into Entity based on the recursive
flags on the layers being set. This allows to make layer filtering simpler
but the layerIds list building step will need to be improved as a follow up
commit
Unit tests updated
Change-Id: I93451493e41c6c9486defa7e88eaee073a9bc932
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/jobs/renderviewjobutils.cpp')
-rw-r--r-- | src/render/jobs/renderviewjobutils.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/render/jobs/renderviewjobutils.cpp b/src/render/jobs/renderviewjobutils.cpp index b9959fe47..41b04190f 100644 --- a/src/render/jobs/renderviewjobutils.cpp +++ b/src/render/jobs/renderviewjobutils.cpp @@ -118,9 +118,7 @@ void setRenderViewConfigFromFrameGraphLeafNode(RenderView *rv, const FrameGraphN break; case FrameGraphNode::LayerFilter: // Can be set multiple times in the tree - rv->setHasLayerFilter(true); - rv->appendLayerFilter(static_cast<const LayerFilterNode *>(node)->layerIds()); - rv->setLayerFilterFilterMode(static_cast<const LayerFilterNode *>(node)->filterMode()); + rv->appendLayerFilter(static_cast<const LayerFilterNode *>(node)->peerId()); break; case FrameGraphNode::RenderPassFilter: |