diff --git a/Hazel/src/Hazel/Core/Application.cpp b/Hazel/src/Hazel/Core/Application.cpp index 8da18234b..1e02f7f6d 100644 --- a/Hazel/src/Hazel/Core/Application.cpp +++ b/Hazel/src/Hazel/Core/Application.cpp @@ -100,6 +100,8 @@ namespace Hazel { ExecuteMainThreadQueue(); + m_Window->OnUpdate(); + if (!m_Minimized) { { @@ -119,7 +121,7 @@ namespace Hazel { m_ImGuiLayer->End(); } - m_Window->OnUpdate(); + m_Window->OnRender(); } } diff --git a/Hazel/src/Hazel/Core/Window.h b/Hazel/src/Hazel/Core/Window.h index c31e1c52b..94d62f506 100644 --- a/Hazel/src/Hazel/Core/Window.h +++ b/Hazel/src/Hazel/Core/Window.h @@ -30,6 +30,7 @@ namespace Hazel { virtual ~Window() = default; virtual void OnUpdate() = 0; + virtual void OnRender() = 0; virtual uint32_t GetWidth() const = 0; virtual uint32_t GetHeight() const = 0; diff --git a/Hazel/src/Platform/Windows/WindowsWindow.cpp b/Hazel/src/Platform/Windows/WindowsWindow.cpp index af4a39dd7..30ea39b7a 100644 --- a/Hazel/src/Platform/Windows/WindowsWindow.cpp +++ b/Hazel/src/Platform/Windows/WindowsWindow.cpp @@ -177,6 +177,12 @@ namespace Hazel { HZ_PROFILE_FUNCTION(); glfwPollEvents(); + } + + void WindowsWindow::OnRender() + { + HZ_PROFILE_FUNCTION(); + m_Context->SwapBuffers(); } diff --git a/Hazel/src/Platform/Windows/WindowsWindow.h b/Hazel/src/Platform/Windows/WindowsWindow.h index cb1d19cb2..5dac0b986 100644 --- a/Hazel/src/Platform/Windows/WindowsWindow.h +++ b/Hazel/src/Platform/Windows/WindowsWindow.h @@ -14,6 +14,7 @@ namespace Hazel { virtual ~WindowsWindow(); void OnUpdate() override; + void OnRender() override; unsigned int GetWidth() const override { return m_Data.Width; } unsigned int GetHeight() const override { return m_Data.Height; } @@ -43,4 +44,4 @@ namespace Hazel { WindowData m_Data; }; -} \ No newline at end of file +}