Graphics/ForwardFramePipeline: Fix scissor update

This commit is contained in:
Jérôme Leclercq
2022-02-22 13:31:22 +01:00
parent 7ece44b4f4
commit 0dd8c21543
6 changed files with 42 additions and 16 deletions

View File

@@ -32,7 +32,8 @@ namespace Nz
DepthPipelinePass(DepthPipelinePass&&) = delete;
~DepthPipelinePass();
inline void ForceInvalidation();
inline void InvalidateCommandBuffers();
inline void InvalidateElements();
void Prepare(RenderFrame& renderFrame, const Frustumf& frustum, const std::vector<FramePipelinePass::VisibleRenderable>& visibleRenderables, std::size_t visibilityHash);

View File

@@ -7,7 +7,12 @@
namespace Nz
{
inline void DepthPipelinePass::ForceInvalidation()
inline void DepthPipelinePass::InvalidateCommandBuffers()
{
m_rebuildCommandBuffer = true;
}
inline void DepthPipelinePass::InvalidateElements()
{
m_rebuildElements = true;
}

View File

@@ -59,10 +59,10 @@ namespace Nz
void UnregisterViewer(std::size_t viewerIndex) override;
void UnregisterWorldInstance(std::size_t worldInstance) override;
void UpdateLightRenderMask(std::size_t lightIndex, UInt32 renderMask);
void UpdateRenderableRenderMask(std::size_t renderableIndex, UInt32 renderMask);
void UpdateRenderableScissorBox(std::size_t renderableIndex, const Recti& scissorBox);
void UpdateViewerRenderMask(std::size_t viewerIndex, Int32 renderOrder);
void UpdateLightRenderMask(std::size_t lightIndex, UInt32 renderMask) override;
void UpdateRenderableRenderMask(std::size_t renderableIndex, UInt32 renderMask) override;
void UpdateRenderableScissorBox(std::size_t renderableIndex, const Recti& scissorBox) override;
void UpdateViewerRenderMask(std::size_t viewerIndex, Int32 renderOrder) override;
ForwardFramePipeline& operator=(const ForwardFramePipeline&) = delete;
ForwardFramePipeline& operator=(ForwardFramePipeline&&) = delete;

View File

@@ -35,7 +35,8 @@ namespace Nz
ForwardPipelinePass(ForwardPipelinePass&&) = delete;
~ForwardPipelinePass();
inline void ForceInvalidation();
inline void InvalidateCommandBuffers();
inline void InvalidateElements();
void Prepare(RenderFrame& renderFrame, const Frustumf& frustum, const std::vector<FramePipelinePass::VisibleRenderable>& visibleRenderables, const std::vector<const Light*>& visibleLights, std::size_t visibilityHash);

View File

@@ -7,7 +7,12 @@
namespace Nz
{
inline void ForwardPipelinePass::ForceInvalidation()
inline void ForwardPipelinePass::InvalidateCommandBuffers()
{
m_rebuildCommandBuffer = true;
}
inline void ForwardPipelinePass::InvalidateElements()
{
m_rebuildElements = true;
}