Graphics/FrameGraph: Fix texture pool issue

This commit is contained in:
Jérôme Leclercq
2021-12-19 18:29:20 +01:00
parent 9bd411e53c
commit 5963f4c848
3 changed files with 7 additions and 6 deletions

View File

@@ -46,7 +46,7 @@ namespace Nz
inline std::size_t AddInput(std::size_t attachmentId);
inline std::size_t AddOutput(std::size_t attachmentId);
template<typename F> void ForEachAttachment(F&& func) const;
template<typename F> void ForEachAttachment(F&& func, bool singleDSInputOutputCall = true) const;
inline const CommandCallback& GetCommandCallback() const;
inline const std::optional<DepthStencilClear>& GetDepthStencilClear() const;

View File

@@ -39,7 +39,7 @@ namespace Nz
return outputIndex;
}
template<typename F>
void FramePass::ForEachAttachment(F&& func) const
void FramePass::ForEachAttachment(F&& func, bool singleDSInputOutputCall) const
{
for (const auto& input : m_inputs)
func(input.attachmentId);
@@ -52,7 +52,10 @@ namespace Nz
func(m_depthStencilInput);
if (m_depthStencilOutput != FramePass::InvalidAttachmentId && m_depthStencilOutput != m_depthStencilInput)
func(m_depthStencilOutput);
{
if (!singleDSInputOutputCall || m_depthStencilOutput != m_depthStencilInput)
func(m_depthStencilOutput);
}
}
else if (m_depthStencilOutput != FramePass::InvalidAttachmentId)
func(m_depthStencilOutput);