Extract camera frame render-graph stage record context
This commit is contained in:
@@ -13,10 +13,7 @@ namespace {
|
||||
|
||||
using CameraFrameStageRecordHandler = bool (*)(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
bool& handled);
|
||||
|
||||
constexpr std::array<CameraFrameStageRecordHandler, 3u> kCameraFrameStageRecordHandlers = {
|
||||
@@ -29,32 +26,16 @@ constexpr std::array<CameraFrameStageRecordHandler, 3u> kCameraFrameStageRecordH
|
||||
|
||||
bool RecordCameraFrameRenderGraphStage(
|
||||
CameraFrameStage stage,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session) {
|
||||
const CameraFrameRenderGraphStageRecordContext& context) {
|
||||
const CameraFrameStageGraphBuildState stageState =
|
||||
BuildCameraFrameStageGraphBuildState(
|
||||
stage,
|
||||
plan,
|
||||
shadowState,
|
||||
sceneData,
|
||||
session.graphBuilder,
|
||||
session.importedTextures);
|
||||
PublishCameraFrameStageGraphBuildState(
|
||||
stageState,
|
||||
shadowState,
|
||||
session.frameResources);
|
||||
context);
|
||||
PublishCameraFrameStageGraphBuildState(stageState, context);
|
||||
|
||||
for (CameraFrameStageRecordHandler handler : kCameraFrameStageRecordHandlers) {
|
||||
bool stageHandled = false;
|
||||
if (!handler(
|
||||
stageState,
|
||||
plan,
|
||||
shadowState,
|
||||
sceneData,
|
||||
session,
|
||||
stageHandled)) {
|
||||
if (!handler(stageState, context, stageHandled)) {
|
||||
return false;
|
||||
}
|
||||
if (stageHandled) {
|
||||
@@ -62,12 +43,7 @@ bool RecordCameraFrameRenderGraphStage(
|
||||
}
|
||||
}
|
||||
|
||||
AddCameraFrameStageFallbackRasterPass(
|
||||
stageState,
|
||||
plan,
|
||||
shadowState,
|
||||
sceneData,
|
||||
session);
|
||||
AddCameraFrameStageFallbackRasterPass(stageState, context);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,20 +1,13 @@
|
||||
#pragma once
|
||||
|
||||
#include <XCEngine/Rendering/Execution/CameraFramePlan.h>
|
||||
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphRecordingSession.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageRecordContext.h"
|
||||
|
||||
namespace XCEngine {
|
||||
namespace Rendering {
|
||||
|
||||
struct DirectionalShadowExecutionState;
|
||||
|
||||
bool RecordCameraFrameRenderGraphStage(
|
||||
CameraFrameStage stage,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session);
|
||||
const CameraFrameRenderGraphStageRecordContext& context);
|
||||
|
||||
} // namespace Rendering
|
||||
} // namespace XCEngine
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "Rendering/Execution/CameraFrameRenderGraphStagePolicy.h"
|
||||
#include "Rendering/Execution/DirectionalShadowExecutionState.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphRecordingSession.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageRecordContext.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageState.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphSurfaceUtils.h"
|
||||
#include "Rendering/Graph/RenderGraph.h"
|
||||
@@ -192,11 +193,9 @@ bool ExecuteRecordedFrameStage(
|
||||
|
||||
bool TryRecordCameraFrameStageStandaloneRenderGraphPass(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
bool& handled) {
|
||||
CameraFrameRenderGraphRecordingSession& session = context.session;
|
||||
RenderPass* const standaloneStagePass =
|
||||
ResolveStandaloneStagePass(stageState.stage, session.executionState);
|
||||
if (standaloneStagePass == nullptr ||
|
||||
@@ -209,13 +208,13 @@ bool TryRecordCameraFrameStageStandaloneRenderGraphPass(
|
||||
const RenderSceneData stageSceneData =
|
||||
BuildStandaloneStageSceneData(
|
||||
stageState.stage,
|
||||
plan,
|
||||
shadowState,
|
||||
sceneData,
|
||||
context.plan,
|
||||
context.shadowState,
|
||||
context.sceneData,
|
||||
stageState.surfaceTemplate);
|
||||
bool* const stageExecutionSucceeded = &session.stageExecutionSucceeded;
|
||||
const RenderPassGraphBeginCallback beginStandalonePass =
|
||||
[stageExecutionSucceeded, standaloneStagePass, renderContext = &plan.request.context](
|
||||
[stageExecutionSucceeded, standaloneStagePass, renderContext = &context.plan.request.context](
|
||||
const RenderPassContext&) -> bool {
|
||||
if (!InitializeStandalonePass(
|
||||
standaloneStagePass,
|
||||
@@ -229,7 +228,7 @@ bool TryRecordCameraFrameStageStandaloneRenderGraphPass(
|
||||
const RenderPassRenderGraphContext standalonePassContext = {
|
||||
session.graphBuilder,
|
||||
stageState.stageName,
|
||||
plan.request.context,
|
||||
context.plan.request.context,
|
||||
stageSceneData,
|
||||
stageState.surfaceTemplate,
|
||||
stageState.hasSourceSurface
|
||||
@@ -258,11 +257,9 @@ bool TryRecordCameraFrameStageStandaloneRenderGraphPass(
|
||||
|
||||
bool TryRecordCameraFrameMainSceneGraphPass(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState&,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
bool& handled) {
|
||||
CameraFrameRenderGraphRecordingSession& session = context.session;
|
||||
if (stageState.stage != CameraFrameStage::MainScene ||
|
||||
session.executionState.pipeline == nullptr ||
|
||||
!session.executionState.pipeline->SupportsMainSceneRenderGraph()) {
|
||||
@@ -274,8 +271,8 @@ bool TryRecordCameraFrameMainSceneGraphPass(
|
||||
const RenderPipelineMainSceneRenderGraphContext mainSceneContext = {
|
||||
session.graphBuilder,
|
||||
stageState.stageName,
|
||||
plan.request.context,
|
||||
sceneData,
|
||||
context.plan.request.context,
|
||||
context.sceneData,
|
||||
stageState.surfaceTemplate,
|
||||
stageState.hasSourceSurface
|
||||
? &stageState.sourceSurfaceTemplate
|
||||
@@ -299,16 +296,14 @@ bool TryRecordCameraFrameMainSceneGraphPass(
|
||||
|
||||
void AddCameraFrameStageFallbackRasterPass(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session) {
|
||||
const CameraFrameRenderGraphStageRecordContext& context) {
|
||||
CameraFrameRenderGraphRecordingSession& session = context.session;
|
||||
const CameraFrameStageGraphBuildState capturedStageState = stageState;
|
||||
CameraFrameExecutionState* const executionState = &session.executionState;
|
||||
bool* const stageExecutionSucceeded = &session.stageExecutionSucceeded;
|
||||
const CameraFramePlan* const planPtr = &plan;
|
||||
const DirectionalShadowExecutionState* const shadowStatePtr = &shadowState;
|
||||
const RenderSceneData* const sceneDataPtr = &sceneData;
|
||||
const CameraFramePlan* const planPtr = &context.plan;
|
||||
const DirectionalShadowExecutionState* const shadowStatePtr = &context.shadowState;
|
||||
const RenderSceneData* const sceneDataPtr = &context.sceneData;
|
||||
session.graphBuilder.AddRasterPass(
|
||||
capturedStageState.stageName,
|
||||
[capturedStageState, executionState, stageExecutionSucceeded, planPtr, shadowStatePtr, sceneDataPtr](
|
||||
|
||||
@@ -3,34 +3,22 @@
|
||||
namespace XCEngine {
|
||||
namespace Rendering {
|
||||
|
||||
struct CameraFramePlan;
|
||||
struct CameraFrameRenderGraphRecordingSession;
|
||||
struct CameraFrameRenderGraphStageRecordContext;
|
||||
struct CameraFrameStageGraphBuildState;
|
||||
struct DirectionalShadowExecutionState;
|
||||
struct RenderSceneData;
|
||||
|
||||
bool TryRecordCameraFrameStageStandaloneRenderGraphPass(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
bool& handled);
|
||||
|
||||
bool TryRecordCameraFrameMainSceneGraphPass(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
bool& handled);
|
||||
|
||||
void AddCameraFrameStageFallbackRasterPass(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session);
|
||||
const CameraFrameRenderGraphStageRecordContext& context);
|
||||
|
||||
} // namespace Rendering
|
||||
} // namespace XCEngine
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
#pragma once
|
||||
|
||||
#include <XCEngine/Rendering/Execution/CameraFramePlan.h>
|
||||
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphRecordingSession.h"
|
||||
|
||||
namespace XCEngine {
|
||||
namespace Rendering {
|
||||
|
||||
struct DirectionalShadowExecutionState;
|
||||
struct RenderSceneData;
|
||||
|
||||
struct CameraFrameRenderGraphStageRecordContext {
|
||||
const CameraFramePlan& plan;
|
||||
const DirectionalShadowExecutionState& shadowState;
|
||||
const RenderSceneData& sceneData;
|
||||
CameraFrameRenderGraphRecordingSession& session;
|
||||
};
|
||||
|
||||
} // namespace Rendering
|
||||
} // namespace XCEngine
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "Rendering/Execution/CameraFrameRenderGraphResources.h"
|
||||
#include "Rendering/Execution/CameraFrameRenderGraphStagePolicy.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphRecordingSession.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageRecordContext.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageDispatch.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageRuntime.h"
|
||||
#include "Rendering/Graph/RenderGraph.h"
|
||||
@@ -30,18 +31,19 @@ bool RecordCameraFrameRenderGraphStages(
|
||||
executionState,
|
||||
stageExecutionSucceeded
|
||||
};
|
||||
const CameraFrameRenderGraphStageRecordContext context = {
|
||||
plan,
|
||||
shadowState,
|
||||
sceneData,
|
||||
session
|
||||
};
|
||||
for (const CameraFrameStageInfo& stageInfo : kOrderedCameraFrameStages) {
|
||||
if (!plan.HasFrameStage(stageInfo.stage) &&
|
||||
stageInfo.stage != CameraFrameStage::MainScene) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!RecordCameraFrameRenderGraphStage(
|
||||
stageInfo.stage,
|
||||
plan,
|
||||
shadowState,
|
||||
sceneData,
|
||||
session)) {
|
||||
if (!RecordCameraFrameRenderGraphStage(stageInfo.stage, context)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "Debug/Logger.h"
|
||||
#include "Rendering/Execution/CameraFrameRenderGraphStagePolicy.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphRecordingSession.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageRecordContext.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageState.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphSurfaceUtils.h"
|
||||
#include "Rendering/Graph/RenderGraph.h"
|
||||
@@ -243,11 +244,9 @@ bool RecordFullscreenPassSequenceStage(
|
||||
|
||||
bool TryRecordCameraFrameStageSequence(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState&,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
bool& handled) {
|
||||
CameraFrameRenderGraphRecordingSession& session = context.session;
|
||||
if (stageState.stageSequence == nullptr) {
|
||||
handled = false;
|
||||
return true;
|
||||
@@ -255,7 +254,10 @@ bool TryRecordCameraFrameStageSequence(
|
||||
|
||||
handled = true;
|
||||
const RenderPassContext stagePassContext =
|
||||
BuildCameraFrameStageGraphPassContext(plan, stageState, sceneData);
|
||||
BuildCameraFrameStageGraphPassContext(
|
||||
context,
|
||||
stageState,
|
||||
context.sceneData);
|
||||
const bool recordResult =
|
||||
IsCameraFrameFullscreenSequenceStage(stageState.stage)
|
||||
? RecordFullscreenPassSequenceStage(
|
||||
@@ -263,7 +265,7 @@ bool TryRecordCameraFrameStageSequence(
|
||||
stageState.stageName,
|
||||
stagePassContext,
|
||||
ResolveCameraFrameFullscreenStageGraphSourceBinding(
|
||||
plan,
|
||||
context.plan,
|
||||
stageState.stage,
|
||||
stageState.surfaceTemplate,
|
||||
stagePassContext.sourceSurface,
|
||||
@@ -272,7 +274,7 @@ bool TryRecordCameraFrameStageSequence(
|
||||
GetPrimaryColorTexture(stageState.sourceSurface),
|
||||
&session.blackboard),
|
||||
stageState.outputColor,
|
||||
sceneData,
|
||||
context.sceneData,
|
||||
stageState.stageSequence,
|
||||
session.executionState,
|
||||
session.graphBuilder,
|
||||
@@ -283,7 +285,7 @@ bool TryRecordCameraFrameStageSequence(
|
||||
stageState.stageName,
|
||||
stagePassContext,
|
||||
stageState.outputSurface,
|
||||
sceneData,
|
||||
context.sceneData,
|
||||
stageState.stageSequence,
|
||||
session.executionState,
|
||||
session.graphBuilder,
|
||||
|
||||
@@ -3,19 +3,12 @@
|
||||
namespace XCEngine {
|
||||
namespace Rendering {
|
||||
|
||||
struct CameraFrameExecutionState;
|
||||
struct CameraFramePlan;
|
||||
struct CameraFrameRenderGraphRecordingSession;
|
||||
struct CameraFrameRenderGraphStageRecordContext;
|
||||
struct CameraFrameStageGraphBuildState;
|
||||
struct DirectionalShadowExecutionState;
|
||||
struct RenderSceneData;
|
||||
|
||||
bool TryRecordCameraFrameStageSequence(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
CameraFrameRenderGraphRecordingSession& session,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
bool& handled);
|
||||
|
||||
} // namespace Rendering
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "Rendering/Execution/CameraFrameRenderGraphResources.h"
|
||||
#include "Rendering/Execution/CameraFrameRenderGraphStagePolicy.h"
|
||||
#include "Rendering/Execution/DirectionalShadowExecutionState.h"
|
||||
#include "Rendering/Execution/Internal/CameraFrameRenderGraphStageRecordContext.h"
|
||||
|
||||
namespace XCEngine {
|
||||
namespace Rendering {
|
||||
@@ -51,11 +52,11 @@ RenderPassContext BuildFrameStagePassContext(
|
||||
} // namespace
|
||||
|
||||
RenderPassContext BuildCameraFrameStageGraphPassContext(
|
||||
const CameraFramePlan& plan,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const RenderSceneData& sceneData) {
|
||||
return {
|
||||
plan.request.context,
|
||||
context.plan.request.context,
|
||||
stageState.surfaceTemplate,
|
||||
sceneData,
|
||||
stageState.hasSourceSurface
|
||||
@@ -68,18 +69,18 @@ RenderPassContext BuildCameraFrameStageGraphPassContext(
|
||||
|
||||
CameraFrameStageGraphBuildState BuildCameraFrameStageGraphBuildState(
|
||||
CameraFrameStage stage,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
RenderGraphBuilder& graphBuilder,
|
||||
RenderGraphImportedTextureRegistry& importedTextures) {
|
||||
const CameraFrameRenderGraphStageRecordContext& context) {
|
||||
CameraFrameStageGraphBuildState stageState = {};
|
||||
stageState.stage = stage;
|
||||
stageState.stageName = Containers::String(GetCameraFrameStageName(stage));
|
||||
stageState.stageSequence = plan.GetPassSequence(stage);
|
||||
stageState.stageSequence = context.plan.GetPassSequence(stage);
|
||||
|
||||
const RenderPassContext stagePassContext =
|
||||
BuildFrameStagePassContext(stage, plan, shadowState, sceneData);
|
||||
BuildFrameStagePassContext(
|
||||
stage,
|
||||
context.plan,
|
||||
context.shadowState,
|
||||
context.sceneData);
|
||||
stageState.surfaceTemplate = stagePassContext.surface;
|
||||
stageState.hasSourceSurface = stagePassContext.sourceSurface != nullptr;
|
||||
if (stageState.hasSourceSurface) {
|
||||
@@ -89,16 +90,16 @@ CameraFrameStageGraphBuildState BuildCameraFrameStageGraphBuildState(
|
||||
stageState.sourceColorState = stagePassContext.sourceColorState;
|
||||
stageState.sourceSurface =
|
||||
ImportRenderGraphSurface(
|
||||
graphBuilder,
|
||||
importedTextures,
|
||||
context.session.graphBuilder,
|
||||
context.session.importedTextures,
|
||||
stageState.stageName + ".Source",
|
||||
stagePassContext.sourceSurface,
|
||||
RenderGraphSurfaceImportUsage::Source,
|
||||
IsCameraFrameFullscreenSequenceStage(stage));
|
||||
stageState.outputSurface =
|
||||
ImportRenderGraphSurface(
|
||||
graphBuilder,
|
||||
importedTextures,
|
||||
context.session.graphBuilder,
|
||||
context.session.importedTextures,
|
||||
stageState.stageName + ".Output",
|
||||
&stagePassContext.surface,
|
||||
RenderGraphSurfaceImportUsage::Output,
|
||||
@@ -107,20 +108,20 @@ CameraFrameStageGraphBuildState BuildCameraFrameStageGraphBuildState(
|
||||
stageState.outputColor =
|
||||
ResolveStageOutputColorHandle(
|
||||
stage,
|
||||
plan,
|
||||
context.plan,
|
||||
stageState.stageName,
|
||||
stagePassContext,
|
||||
stageState.outputSurface,
|
||||
graphBuilder);
|
||||
context.session.graphBuilder);
|
||||
return stageState;
|
||||
}
|
||||
|
||||
void PublishCameraFrameStageGraphBuildState(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
CameraFrameRenderGraphResources& frameResources) {
|
||||
const CameraFrameRenderGraphStageRecordContext& context) {
|
||||
CameraFrameRenderGraphResources& frameResources = context.session.frameResources;
|
||||
if (stageState.stage == CameraFrameStage::ShadowCaster &&
|
||||
shadowState.HasShadowSampling() &&
|
||||
context.shadowState.HasShadowSampling() &&
|
||||
stageState.outputSurface.depthTexture.IsValid()) {
|
||||
frameResources.mainDirectionalShadow = stageState.outputSurface.depthTexture;
|
||||
}
|
||||
|
||||
@@ -7,9 +7,7 @@
|
||||
namespace XCEngine {
|
||||
namespace Rendering {
|
||||
|
||||
struct CameraFrameRenderGraphResources;
|
||||
struct DirectionalShadowExecutionState;
|
||||
class RenderGraphBuilder;
|
||||
struct CameraFrameRenderGraphStageRecordContext;
|
||||
|
||||
struct CameraFrameStageGraphBuildState {
|
||||
CameraFrameStage stage = CameraFrameStage::MainScene;
|
||||
@@ -26,22 +24,17 @@ struct CameraFrameStageGraphBuildState {
|
||||
};
|
||||
|
||||
RenderPassContext BuildCameraFrameStageGraphPassContext(
|
||||
const CameraFramePlan& plan,
|
||||
const CameraFrameRenderGraphStageRecordContext& context,
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const RenderSceneData& sceneData);
|
||||
|
||||
CameraFrameStageGraphBuildState BuildCameraFrameStageGraphBuildState(
|
||||
CameraFrameStage stage,
|
||||
const CameraFramePlan& plan,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
const RenderSceneData& sceneData,
|
||||
RenderGraphBuilder& graphBuilder,
|
||||
RenderGraphImportedTextureRegistry& importedTextures);
|
||||
const CameraFrameRenderGraphStageRecordContext& context);
|
||||
|
||||
void PublishCameraFrameStageGraphBuildState(
|
||||
const CameraFrameStageGraphBuildState& stageState,
|
||||
const DirectionalShadowExecutionState& shadowState,
|
||||
CameraFrameRenderGraphResources& frameResources);
|
||||
const CameraFrameRenderGraphStageRecordContext& context);
|
||||
|
||||
} // namespace Rendering
|
||||
} // namespace XCEngine
|
||||
|
||||
Reference in New Issue
Block a user