Integrate render target handling in frame graphs (#411)

* Graphics: Integrate RenderTarget in FrameGraph

- This handles the blit to texture/swapchain in the FrameGraph and fixes RenderTextureBlit
- Dummy attachments were added to the FrameGraph class to handle link without texture (used to setup a dependency between two passes with no texture)
- FramePass now supports custom access/layout/usage for inputs

* Graphics/RenderTarget: Allow to set any RenderTarget as output
This commit is contained in:
Jérôme Leclercq
2023-11-28 21:00:57 +01:00
committed by GitHub
parent f57fc3c1d5
commit 32d227628c
19 changed files with 490 additions and 340 deletions

View File

@@ -6,6 +6,32 @@
namespace Nz
{
inline RenderTarget::RenderTarget(Int32 renderOrder) :
m_renderOrder(renderOrder),
m_frameGraphOutput(false)
{
}
inline Int32 RenderTarget::GetRenderOrder() const
{
return m_renderOrder;
}
inline bool RenderTarget::IsFrameGraphOutput() const
{
return m_frameGraphOutput;
}
inline void RenderTarget::SetFrameGraphOutput(bool output)
{
m_frameGraphOutput = output;
}
inline void RenderTarget::UpdateRenderOrder(Int32 renderOrder)
{
OnRenderTargetRenderOrderChange(this, renderOrder);
m_renderOrder = renderOrder;
}
}
#include <Nazara/Graphics/DebugOff.hpp>