From 8aee665d32d2287655a142d5ef5942beec52f3ce Mon Sep 17 00:00:00 2001 From: ssdfasd <2156608475@qq.com> Date: Wed, 15 Apr 2026 12:55:51 +0800 Subject: [PATCH] refactor(rendering): add callback helpers for common graph pass contracts --- .../Rendering/RenderPassGraphContract.h | 22 +++++++++++++++++++ .../RenderPipelineMainSceneGraphContract.cpp | 7 +----- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/engine/include/XCEngine/Rendering/RenderPassGraphContract.h b/engine/include/XCEngine/Rendering/RenderPassGraphContract.h index d85a7d50..edbea7e6 100644 --- a/engine/include/XCEngine/Rendering/RenderPassGraphContract.h +++ b/engine/include/XCEngine/Rendering/RenderPassGraphContract.h @@ -59,5 +59,27 @@ inline bool RecordColorDepthRasterPass( BuildColorDepthRasterPassGraphIO()); } +inline bool RecordSourceColorFullscreenCallbackRasterPass( + const RenderPassRenderGraphContext& context, + RenderPassGraphExecutePassCallback executePassCallback, + std::vector additionalReadTextures = {}) { + return RecordCallbackRasterRenderPass( + context, + BuildSourceColorFullscreenRasterPassGraphIO(), + std::move(executePassCallback), + std::move(additionalReadTextures)); +} + +inline bool RecordColorDepthCallbackRasterPass( + const RenderPassRenderGraphContext& context, + RenderPassGraphExecutePassCallback executePassCallback, + std::vector additionalReadTextures = {}) { + return RecordCallbackRasterRenderPass( + context, + BuildColorDepthRasterPassGraphIO(), + std::move(executePassCallback), + std::move(additionalReadTextures)); +} + } // namespace Rendering } // namespace XCEngine diff --git a/engine/src/Rendering/RenderPipelineMainSceneGraphContract.cpp b/engine/src/Rendering/RenderPipelineMainSceneGraphContract.cpp index 35941ea5..8e08db61 100644 --- a/engine/src/Rendering/RenderPipelineMainSceneGraphContract.cpp +++ b/engine/src/Rendering/RenderPipelineMainSceneGraphContract.cpp @@ -57,13 +57,8 @@ bool RecordRenderPipelineMainScenePhasePass( scenePhase)), beginPassCallback, endPassCallback); - return RecordCallbackRasterRenderPass( + return RecordColorDepthCallbackRasterPass( passContext, - { - false, - true, - context.depthTarget.IsValid() - }, std::move(executePassCallback), std::move(additionalReadTextures)); }