32 lines
915 B
C++
32 lines
915 B
C++
#pragma once
|
|
|
|
#include "Passes/SceneViewportEditorOverlayPass.h"
|
|
#include "Passes/SceneViewportGridPass.h"
|
|
#include "Passes/SceneViewportSelectionOutlinePass.h"
|
|
#include "SceneViewportRenderPlan.h"
|
|
|
|
namespace XCEngine {
|
|
namespace Editor {
|
|
|
|
class SceneViewportRenderPassBundle {
|
|
public:
|
|
~SceneViewportRenderPassBundle() = default;
|
|
|
|
void Shutdown();
|
|
|
|
SceneViewportRenderPlanBuildResult BuildRenderPlan(
|
|
ViewportRenderTargets& targets,
|
|
const SceneViewportOverlayData& overlay,
|
|
const std::vector<uint64_t>& selectedObjectIds,
|
|
const SceneViewportOverlayFrameData& editorOverlayFrameData,
|
|
bool debugSelectionMask = false);
|
|
|
|
private:
|
|
SceneViewportGridPassRenderer m_gridRenderer;
|
|
SceneViewportSelectionOutlinePassRenderer m_selectionOutlineRenderer;
|
|
SceneViewportEditorOverlayPassRenderer m_overlayRenderer;
|
|
};
|
|
|
|
} // namespace Editor
|
|
} // namespace XCEngine
|