refactor(rendering): formalize fallback stage policy

This commit is contained in:
2026-04-15 16:09:20 +08:00
parent e93196c7d0
commit 03ee1706ae
4 changed files with 56 additions and 2 deletions

View File

@@ -103,7 +103,7 @@ std::vector<RenderGraphTextureHandle> BuildCameraFrameStageGraphDefaultColorTarg
RenderGraphSurfaceAccessMode BuildCameraFrameStageFallbackSurfaceAccessMode(
CameraFrameStage stage) {
return IsCameraFrameFullscreenSequenceStage(stage)
return DoesCameraFrameStageFallbackUseColorOnlySurfaceAccess(stage)
? RenderGraphSurfaceAccessMode::ColorOnly
: RenderGraphSurfaceAccessMode::ColorDepth;
}
@@ -509,7 +509,8 @@ CameraFrameStageFallbackSurfaceResolution ResolveCameraFrameStageFallbackSurface
}
resolution.sourceSurface = stageState.sourceSurfaceTemplate;
if (IsCameraFrameFullscreenSequenceStage(stageState.stage) &&
if (DoesCameraFrameStageFallbackPromoteSourceToPixelShaderResource(
stageState.stage) &&
graphOwnsSourceTransitions) {
resolution.sourceSurface =
BuildGraphManagedImportedSurface(