feat: add editor viewport host service

This commit is contained in:
2026-03-28 17:04:14 +08:00
parent 6fcb6ac8fb
commit 3b652ac1db
12 changed files with 492 additions and 2 deletions

View File

@@ -3,6 +3,7 @@
#include "Platform/D3D12WindowRenderer.h"
#include "UI/ImGuiBackendBridge.h"
#include "UI/ImGuiSession.h"
#include "Viewport/ViewportHostService.h"
#include <XCEngine/Rendering/RenderContext.h>
#include <memory>
@@ -35,6 +36,7 @@ public:
Rendering::RenderContext GetMainRenderContext() const { return m_windowRenderer.GetRenderContext(); }
RHI::RHIDevice* GetMainRHIDevice() const { return m_windowRenderer.GetRHIDevice(); }
RHI::RHISwapChain* GetMainSwapChain() const { return m_windowRenderer.GetSwapChain(); }
IViewportHostService& GetViewportHostService() { return m_viewportHostService; }
bool IsRenderReady() const { return m_renderReady; }
HWND GetWindowHandle() const { return m_hwnd; }
@@ -60,6 +62,7 @@ private:
Platform::D3D12WindowRenderer m_windowRenderer;
UI::ImGuiBackendBridge m_imguiBackend;
UI::ImGuiSession m_imguiSession;
ViewportHostService m_viewportHostService;
uint64_t m_exitRequestedHandlerId = 0;
std::wstring m_lastWindowTitle;
bool m_renderReady = false;