I am embarrassed to ask, but what is flip-mode
No need to be embarrassed.
It's a bit complicated, but I hope this explanation is at least clear.
TLDR: Flip-mode combines the best of borderless and exclusive modes.
Until Windows 10, there were two ways that a game could output:
- Full-screen Exclusive Mode.
- This mode bypasses the compositor/desktop window manager (DWM) which is used to draw windows, and gives the game exclusive control over what is being displayed on the monitor.
- Since it has exclusive access to the GPU, it takes a moment to switch back to the desktop or other applications if you alt-tab; prevents other monitors from displaying anything else if you have a multi-monitor setup; and blocks notifications/overlays (like the Game Bar).
- If you disable V-Sync in exclusive mode you will get screen tearing, because frames are being presented directly to the display.
- This should theoretically be the best performing mode, since the GPU is exclusively working on rendering the game. This was the only option for games prior to Windows Vista, which introduced the DWM.
- Borderless Window Mode.
- This mode runs in a window, but one which covers the screen without displaying any borders. Frames are presented to the DWM instead of being sent directly to the display.
- Since it is being drawn as a window, alt-tab should be instant just like any other application, and the game shouldn't prevent other monitors from displaying something else at the same time.
- If you disable V-Sync in borderless window mode you will not get screen tearing because it presents frames to the compositor, and the compositor is triple-buffered. That also means there is an extra frame of latency.
- It's theoretically less performant since frames are passed through the DWM rather than sent to the display directly, and the DWM can also be drawing other windows at the same time since the game does not have exclusive access. In practice though, this should be negligible on any modern GPU.
Now Windows 10 adds a third mode:
- Flip-Mode (may also called direct-flip or similar)
- Without getting too technical, it basically combines the two previous modes.
- It acts like a window as far as things like alt-tab and notifications are concerned, and shouldn't block other monitors.
- But if it is the active window, and nothing is displayed on top of it, it will bypass the DWM.
- Since it bypasses the DWM, disabling V-Sync will tear, just like Full-Screen Exclusive mode; but as soon as you alt-tab away or another window appears on top, it stops tearing, until it is the only window being displayed on that monitor again.
- Performance should be equivalent to exclusive mode, if not slightly better, and latency is comparable as long as the DWM is currently being bypassed.
DX12 and Vulkan games should all support flip-mode, though I think the implementation may have changed over time.
It used to be that there was no true exclusive mode for DX12/Vulkan at all, but I think they do support it now after people complained - so you may have to put them into "borderless" mode if that's an option.
Generally, if you're in "borderless" mode in a DX12/Vulkan game and disabling V-sync tears, it's actually using flip-mode.
Windows 10's Full-Screen Optimizations feature also upgrades most DX9 and older games, as well as select DX11 games, to flip-mode.
There, you would select "full-screen exclusive" mode in the game, but notifications and overlays will continue to work, and alt-tabbing should be quick.
If an older game is running in FSE mode, but WIN+G is able to bring up the game bar, it's probably been upgraded to flip-mode.
Where this gets a bit complicated is that many Unity games in particular only support borderless mode, but call it "fullscreen mode".
Borderless doesn't prevent overlays and fast alt-tabbing from working either; but borderless games won't tear if you disable V-Sync.
So there needs to be the combination of:
- Disabling V-Sync does tear.
- WIN+G will display the Game Bar overlay, instead of causing the screen to flash twice.
That should tell you that you're in flip-mode.
As I mentioned in my previous post though, if a Unity game only offers borderless mode, it can generally be forced to use flip-mode via Kaldaien's "Special K" modding tool.
Another way to identify if flip-mode working is if you have a G-Sync display.
With G-Sync only enabled for "fullscreen mode" and not "windowed and full screen mode" it should only activate in true exclusive mode (where the game bar doesn't work) or in flip-mode (where the game bar does work).
That is how I prefer to keep G-Sync configured, since windowed mode does not sync correctly in most games (if not all) which means it's not as smooth at it should be. Flip-mode means that G-Sync works correctly, but also that the game behaves just like a borderless window.