diff --git a/internal/ui/context.go b/internal/ui/context.go index f38b3a5e6..ebd9dbbd8 100644 --- a/internal/ui/context.go +++ b/internal/ui/context.go @@ -200,7 +200,7 @@ func (c *context) drawGame(graphicsDriver graphicsdriver.Graphics, forceDraw boo // TODO: Metal (and maybe DirectX) cannot vsync without swapping the buffer by rendering the screen framebuffer (#2520). // Implement this skipping appropriately for Metal and DirectX. - if c.skipCount < maxSkipCount && graphicsDriver.IsGL() { + if c.skipCount < maxSkipCount || !graphicsDriver.IsGL() { if graphicsDriver.NeedsClearingScreen() { // This clear is needed for fullscreen mode or some mobile platforms (#622). c.screen.clear()