33 lines
1.0 KiB
C++
33 lines
1.0 KiB
C++
|
|
#include "Rendering/Viewport/SceneViewportRenderPassBundle.h"
|
||
|
|
|
||
|
|
namespace XCEngine::UI::Editor::App {
|
||
|
|
|
||
|
|
void SceneViewportRenderPassBundle::Shutdown() {
|
||
|
|
m_gridRenderer.Shutdown();
|
||
|
|
m_selectionOutlineRenderer.Shutdown();
|
||
|
|
}
|
||
|
|
|
||
|
|
SceneViewportRenderPlanBuildResult
|
||
|
|
SceneViewportRenderPassBundle::BuildRenderPlan(
|
||
|
|
ViewportRenderTargets& targets,
|
||
|
|
const SceneViewportRenderRequest& request) {
|
||
|
|
return BuildSceneViewportRenderPlan(
|
||
|
|
targets,
|
||
|
|
request,
|
||
|
|
[this](const SceneViewportGridPassData& data) {
|
||
|
|
return CreateSceneViewportGridPass(m_gridRenderer, data);
|
||
|
|
},
|
||
|
|
[this](
|
||
|
|
ViewportRenderTargets* outlineTargets,
|
||
|
|
const std::vector<std::uint64_t>& selectedObjectIds,
|
||
|
|
const SceneViewportSelectionOutlineStyle& style) {
|
||
|
|
return CreateSceneViewportSelectionOutlinePass(
|
||
|
|
m_selectionOutlineRenderer,
|
||
|
|
outlineTargets,
|
||
|
|
selectedObjectIds,
|
||
|
|
style);
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
} // namespace XCEngine::UI::Editor::App
|