// // ViewportPanel:场景渲染输出面板。 // // tonemap 输出经 ImGui::Image 显示(Editor 模式),并提供 // Editor Viewport / Fullscreen 显示模式切换。面板可用区域 // (物理像素)上报为渲染分辨率 → 画面精确填满面板。 // #ifndef HELLOVULKAN_VIEWPORTPANEL_H #define HELLOVULKAN_VIEWPORTPANEL_H #include "EditorContext.h" // Viewport 面板每帧上报的输入焦点状态(Hazel 模式:编辑器据此决定 // 游戏侧输入是否放行——悬停/持焦 Viewport 才拥有 WASD/鼠标) struct ViewportInputState { bool hovered = false; // 鼠标悬停在 Viewport 面板上 bool focused = false; // Viewport 面板持有键盘焦点 }; class ViewportPanel { public: void Draw(const EditorContext& ctx, ViewportInputState& out); }; #endif //HELLOVULKAN_VIEWPORTPANEL_H