From 52ec5d88f007465b1cc2e37c0310f3121318caca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Leclercq?= Date: Sat, 17 Jul 2021 21:10:10 +0200 Subject: [PATCH] Graphics/FrameGraph: Fix depth stencil input not being taken into account for graph dependency --- src/Nazara/Graphics/FrameGraph.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/Nazara/Graphics/FrameGraph.cpp b/src/Nazara/Graphics/FrameGraph.cpp index ab0ffefd4..46f7b5ce9 100644 --- a/src/Nazara/Graphics/FrameGraph.cpp +++ b/src/Nazara/Graphics/FrameGraph.cpp @@ -900,6 +900,20 @@ namespace Nz } } } + + if (std::size_t dsInput = framePass.GetDepthStencilInput(); dsInput != FramePass::InvalidAttachmentId) + { + auto it = m_pending.attachmentWriteList.find(dsInput); + if (it != m_pending.attachmentWriteList.end()) + { + const PassList& dependencyPassList = it->second; + for (std::size_t dependencyPass : dependencyPassList) + { + if (dependencyPass != passIndex) + TraverseGraph(dependencyPass); + } + } + } } void FrameGraph::RemoveDuplicatePasses()