Is there a way to make DX12 games run in "true" fullscreen mode?

Everything about latency. Tips, testing methods, mouse lag, display lag, game engine lag, network lag, whole input lag chain, VSYNC OFF vs VSYNC ON, and more! Input Lag Articles on Blur Busters.
slaver01
Posts: 89
Joined: 21 Sep 2020, 01:48

Is there a way to make DX12 games run in "true" fullscreen mode?

Post by slaver01 » 18 Feb 2021, 08:16

Microsoft defaults all games installed on Windows 10 run in fake-fullscreen borderless window mode. You can still make them run in fullscreen exclusive by disabling "Full Screen Optimization" on each process. However, this only works in non-DX12 games.

I've tested DX12 mode in Metro Exodus, Remedy's Control, Gears of War 5 and Warhammer 2 Total War. Disabling FSO does not work as they still run in fake borderless window fullscreen mode. I can tell because the "Activate Windows" watermark will be displayed on the bottom right of my screen. But with DX11 mode + FSO disabled, the watermark will be completely overlapped by the game and thus not showing.

Running in DX12 borderless mode also create some other issues such as input delay, stuttering and Freesync not working in those games I've tested despite having overall framerate improvement. Is there a way to force DX12 into fullscreen exclusive?

User avatar
BTRY B 529th FA BN
Posts: 524
Joined: 18 Dec 2013, 13:28

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by BTRY B 529th FA BN » 18 Feb 2021, 09:58

That's weird. When I run frameview by Nvidia I get the F, I, icons (Fullscreen, Independent Flip) vs W, I (Windowed, Independent)

EDIT: I don't think Frameview can discern between the two so it's probably a Frameview problem with identifying what mode Windows runs. I just disabled FSO and ran the same game when I didn't disable FSO and Frameview reported the same F, I,.

empleat
Posts: 149
Joined: 28 Feb 2020, 21:06

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by empleat » 21 Feb 2021, 11:35

BTRY B 529th FA BN wrote:
18 Feb 2021, 09:58
That's weird. When I run frameview by Nvidia I get the F, I, icons (Fullscreen, Independent Flip) vs W, I (Windowed, Independent)

EDIT: I don't think Frameview can discern between the two so it's probably a Frameview problem with identifying what mode Windows runs. I just disabled FSO and ran the same game when I didn't disable FSO and Frameview reported the same F, I,.
You can tell easily by adjusting sound using media keys on keyboard, or changing keyboard language (while in-game) if you see pop out menu, FSO is on. If you don't: it is off. Also you should be able to tell difference in input lag, after it is disabled! It works only using these registry tweaks: https://www.mediafire.com/file/y10n4s81 ... s.REG/file

Up until DX11, doesn't work on DX12! DX12 is not that good anyways, so change direct to 11 everywhere you can, or use Vulkan, if possible. Still annoying in some DX12 games... Microsoft is so...

User avatar
BTRY B 529th FA BN
Posts: 524
Joined: 18 Dec 2013, 13:28

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by BTRY B 529th FA BN » 21 Feb 2021, 12:58

empleat wrote:
21 Feb 2021, 11:35
BTRY B 529th FA BN wrote:
18 Feb 2021, 09:58
That's weird. When I run frameview by Nvidia I get the F, I, icons (Fullscreen, Independent Flip) vs W, I (Windowed, Independent)

EDIT: I don't think Frameview can discern between the two so it's probably a Frameview problem with identifying what mode Windows runs. I just disabled FSO and ran the same game when I didn't disable FSO and Frameview reported the same F, I,.
You can tell easily by adjusting sound using media keys on keyboard, or changing keyboard language (while in-game) if you see pop out menu, FSO is on. If you don't: it is off. Also you should be able to tell difference in input lag, after it is disabled! It works only using these registry tweaks: https://www.mediafire.com/file/y10n4s81 ... s.REG/file

Up until DX11, doesn't work on DX12! DX12 is not that good anyways, so change direct to 11 everywhere you can, or use Vulkan, if possible. Still annoying in some DX12 games... Microsoft is so...
So simply disabling FSO via the game .exe doesn't fully disable FSO, and those reg keys are needed?

EDIT: Wait, is this for people using GameDVR?

pox02
Posts: 259
Joined: 28 Sep 2018, 06:04

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by pox02 » 21 Feb 2021, 13:52

u want iFlip Immediate on DX12 to achieve that u need force vsync off

u can try new driver from nvidia which bypass the dwm its start from 461.09 and could force iflip immediate on game? i dont know


info

https://nvidia.custhelp.com/app/answers ... er-version

Code: Select all

If V-Sync is OFF, then there will be tearing (even in windowed mode) because, as in full-screen mode, there is now no desktop compositor controlling the presentation
monitors xg258q aw2518hf 27GK750F-B pg248q xg240r lg w2363d-pf xb270hu XL2546 XL2546K NXG252R

empleat
Posts: 149
Joined: 28 Feb 2020, 21:06

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by empleat » 21 Feb 2021, 17:33

BTRY B 529th FA BN wrote:
21 Feb 2021, 12:58
empleat wrote:
21 Feb 2021, 11:35
BTRY B 529th FA BN wrote:
18 Feb 2021, 09:58
That's weird. When I run frameview by Nvidia I get the F, I, icons (Fullscreen, Independent Flip) vs W, I (Windowed, Independent)

EDIT: I don't think Frameview can discern between the two so it's probably a Frameview problem with identifying what mode Windows runs. I just disabled FSO and ran the same game when I didn't disable FSO and Frameview reported the same F, I,.
You can tell easily by adjusting sound using media keys on keyboard, or changing keyboard language (while in-game) if you see pop out menu, FSO is on. If you don't: it is off. Also you should be able to tell difference in input lag, after it is disabled! It works only using these registry tweaks: https://www.mediafire.com/file/y10n4s81 ... s.REG/file

Up until DX11, doesn't work on DX12! DX12 is not that good anyways, so change direct to 11 everywhere you can, or use Vulkan, if possible. Still annoying in some DX12 games... Microsoft is so...
So simply disabling FSO via the game .exe doesn't fully disable FSO, and those reg keys are needed?

EDIT: Wait, is this for people using GameDVR?
I recently tested disabling FSO and without these registry values: it didn't work even for DX9! After setting these values in registry - it allows you to disable FSO up until DX11. But problem with DX12, I read developers can now choose, if their game will support classic Fullscreen exclusive mode. Some developers chosen not to program Fullscreen exclusive mode into their games, so you are stuck with hybrid now (FSO). Which is WTF?! Vulkan has same problem supposedly. So some of these games won't work, because they don't even have option to use anything else then FSO! As least that's what i read...
pox02 wrote:
21 Feb 2021, 13:52
u want iFlip Immediate on DX12 to achieve that u need force vsync off

u can try new driver from nvidia which bypass the dwm its start from 461.09 and could force iflip immediate on game? i dont know


info

https://nvidia.custhelp.com/app/answers ... er-version

Code: Select all

If V-Sync is OFF, then there will be tearing (even in windowed mode) because, as in full-screen mode, there is now no desktop compositor controlling the presentation
This is very interesting, but how do you verify. OS promoted app to MPO plane? In other words, that it works? As it is on OS to decide.
Last edited by empleat on 21 Feb 2021, 18:22, edited 4 times in total.

User avatar
BTRY B 529th FA BN
Posts: 524
Joined: 18 Dec 2013, 13:28

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by BTRY B 529th FA BN » 21 Feb 2021, 17:44

pox02 wrote:
21 Feb 2021, 13:52
u want iFlip Immediate on DX12 to achieve that u need force vsync off

u can try new driver from nvidia which bypass the dwm its start from 461.09 and could force iflip immediate on game? i dont know


info

https://nvidia.custhelp.com/app/answers ... er-version

Code: Select all

If V-Sync is OFF, then there will be tearing (even in windowed mode) because, as in full-screen mode, there is now no desktop compositor controlling the presentation
So basically with 461.09 or newer drivers DWM is in some sort of disabled state or disabled?

EDIT: I was using 441.41 for a few months and recently changed (yesterday actually) and the input delay is drastically reduced. I'm also doing FSO disabled via the game .exe
Last edited by BTRY B 529th FA BN on 21 Feb 2021, 17:50, edited 1 time in total.

empleat
Posts: 149
Joined: 28 Feb 2020, 21:06

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by empleat » 21 Feb 2021, 17:48

BTRY B 529th FA BN wrote:
21 Feb 2021, 17:44
pox02 wrote:
21 Feb 2021, 13:52
u want iFlip Immediate on DX12 to achieve that u need force vsync off

u can try new driver from nvidia which bypass the dwm its start from 461.09 and could force iflip immediate on game? i dont know


info

https://nvidia.custhelp.com/app/answers ... er-version

Code: Select all

If V-Sync is OFF, then there will be tearing (even in windowed mode) because, as in full-screen mode, there is now no desktop compositor controlling the presentation
So basically with 461.09 or newer drivers DWM is in some sort of disabled state or disabled?
You can't disable DWM on Windows, without running into errors probably. However this MPO will assume control of supported applications, instead of DWM. If I understand it correctly. Try this: this helps reduce input lag from DWM, didn't have any problems using this for awhile... viewtopic.php?f=5&t=4512

User avatar
BTRY B 529th FA BN
Posts: 524
Joined: 18 Dec 2013, 13:28

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by BTRY B 529th FA BN » 21 Feb 2021, 17:52

empleat wrote:
21 Feb 2021, 17:48
BTRY B 529th FA BN wrote:
21 Feb 2021, 17:44
pox02 wrote:
21 Feb 2021, 13:52
u want iFlip Immediate on DX12 to achieve that u need force vsync off

u can try new driver from nvidia which bypass the dwm its start from 461.09 and could force iflip immediate on game? i dont know


info

https://nvidia.custhelp.com/app/answers ... er-version

Code: Select all

If V-Sync is OFF, then there will be tearing (even in windowed mode) because, as in full-screen mode, there is now no desktop compositor controlling the presentation
So basically with 461.09 or newer drivers DWM is in some sort of disabled state or disabled?
You can't disable DWM on Windows, without running into errors probably. However this MPO will assume control of supported applications, instead of DWM. If I understand it correctly. Try this: this helps reduce input lag from DWM, didn't have any problems using this for awhile... viewtopic.php?f=5&t=4512
EDIT: I was using 441.41 for a few months and recently changed (yesterday actually) and the input delay is drastically reduced, with just the driver alone. I'm also doing FSO disabled via the game .exe

User avatar
BTRY B 529th FA BN
Posts: 524
Joined: 18 Dec 2013, 13:28

Re: Is there a way to make DX12 games run in "true" fullscreen mode?

Post by BTRY B 529th FA BN » 21 Feb 2021, 18:12

Just found this. Reg key to enable or disable MPO. Careful clicking the download links inside the page, they are actual reg files so you want to 'save link as'
https://nvidia.custhelp.com/app/answers ... ElMjElMjE=

mpo_restore
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Dwm]
"OverlayTestMode"=-

mpo_disable
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Dwm]
"OverlayTestMode"=dword:00000005
Last edited by BTRY B 529th FA BN on 21 Feb 2021, 18:26, edited 1 time in total.

Post Reply