refactor(rendering): formalize native graph recording helpers

This commit is contained in:
2026-04-15 20:46:00 +08:00
parent 7b9e172dbf
commit 8798e63e32
7 changed files with 258 additions and 42 deletions

View File

@@ -425,19 +425,26 @@ RenderGraphRecordingContext BuildCameraFrameStageGraphRecordingContext(
const CameraFrameRenderGraphSourceBinding& sourceBinding,
std::vector<RenderGraphTextureHandle> colorTargets,
RenderGraphTextureHandle depthTarget) {
RenderGraphRecordingContextOverrides overrides = {};
overrides.passName = &passName;
overrides.overrideColorTargets = true;
overrides.colorTargets = std::move(colorTargets);
overrides.overrideDepthTarget = true;
overrides.depthTarget = depthTarget;
return CloneRenderGraphRecordingContext(
RenderGraphRecordingContextBuildParams recordingParams = {};
recordingParams.passName = &passName;
recordingParams.overrideSourceBinding = true;
recordingParams.sourceBinding =
MakeRenderGraphRecordingSourceBinding(
sourceBinding.sourceSurfaceTemplate,
sourceBinding.sourceColorView,
sourceBinding.sourceColorState,
sourceBinding.sourceColor);
recordingParams.overrideColorTargets = true;
recordingParams.colorTargets = std::move(colorTargets);
recordingParams.overrideDepthTarget = true;
recordingParams.depthTarget = depthTarget;
return BuildRenderGraphRecordingContext(
BuildCameraFrameStageGraphRecordingContext(
context,
stageState,
sceneData,
sourceBinding),
overrides);
std::move(recordingParams));
}
RenderGraphRecordingContext BuildCameraFrameStageGraphRecordingContext(