Stop render when iconified

This commit is contained in:
MihailRis 2023-12-28 18:55:54 +03:00
parent 837fd2f32f
commit a1e3706c8f
3 changed files with 14 additions and 3 deletions

View File

@ -109,10 +109,16 @@ void Engine::mainloop() {
gui->act(delta);
screen->update(delta);
screen->draw(delta);
gui->draw(&batch, assets.get());
Window::swapInterval(settings.display.swapInterval);
if (!Window::isIconified()) {
screen->draw(delta);
gui->draw(&batch, assets.get());
Window::swapInterval(settings.display.swapInterval);
} else {
Window::swapInterval(1);
Window::swapBuffers();
}
Window::swapBuffers();
Events::pollEvents();
}

View File

@ -50,6 +50,10 @@ bool Window::isMaximized() {
return glfwGetWindowAttrib(window, GLFW_MAXIMIZED);
}
bool Window::isIconified() {
return glfwGetWindowAttrib(window, GLFW_ICONIFIED);
}
bool Window::isFocused()
{
return glfwGetWindowAttrib(window, GLFW_FOCUSED);

View File

@ -39,6 +39,7 @@ public:
static bool isFullscreen();
static bool isMaximized();
static bool isFocused();
static bool isIconified();
static void pushScissor(glm::vec4 area);
static void popScissor();