Files
XCEngine/engine/src/Rendering/Pipelines/Internal/BuiltinForwardSceneSetup.h

35 lines
877 B
C++

#pragma once
#include <XCEngine/Core/Types.h>
#include <XCEngine/Rendering/Execution/ScenePhase.h>
#include <XCEngine/Rendering/Execution/SceneRenderInjectionPoint.h>
#include <array>
namespace XCEngine {
namespace Rendering {
class SceneRenderFeatureHost;
namespace Pipelines {
namespace Internal {
enum class ForwardSceneStepType : Core::uint8 {
InjectionPoint,
BuiltinPhase
};
struct ForwardSceneStep {
ForwardSceneStepType type = ForwardSceneStepType::BuiltinPhase;
SceneRenderInjectionPoint injectionPoint = SceneRenderInjectionPoint::BeforeOpaque;
ScenePhase scenePhase = ScenePhase::Opaque;
};
const std::array<ForwardSceneStep, 9>& GetBuiltinForwardSceneSteps();
void RegisterBuiltinForwardSceneFeatures(SceneRenderFeatureHost& featureHost);
} // namespace Internal
} // namespace Pipelines
} // namespace Rendering
} // namespace XCEngine