#pragma once #include "Panels/ContentBrowser.h" #include "Panels/PropertiesPanel.h" #include "Panels/SceneHierarchyPanel.h" #include #include namespace Light { class EditorLayer: public Layer { private: std::string m_SceneDir; // #todo: add camera controller class to the engine glm::vec2 m_Direction; float m_Speed = 1000.0f; Ref m_Scene; Ref m_SceneHierarchyPanel; Ref m_PropertiesPanel; Ref m_ContentBrowserPanel; Ref m_Framebuffer; Entity m_CameraEntity; ImVec2 m_AvailableContentRegionPrev; public: EditorLayer(const std::string& name, const std::vector& args); ~EditorLayer(); void OnUpdate(float deltaTime) override; void OnRender() override; void OnUserInterfaceUpdate() override; }; } // namespace Light