Borderless Fullscreen Not Working With Vulkan Rendering API

Hello all,

Not sure when the issue started precisely (sometime between December 1st and today, since the issue only started to happen when I launched Dota tonight). When I launch Dota, despite having Vulkan enabled for months now, it automatically forces the choice under "Resolution" to "Use my monitor's current resolution," despite having had selected "Use advanced settings" with "1920x1080 (144hz) and "Borderless Window" for years. This persists even after I change the settings and restart Dota - it will revert back to "Use my monitor's current resolution." This, of course, adds a bit of annoyance any time I try to alt-tab out of Dota, as it takes a second or two to switch out of Fullscreen and to whatever window I switched to. The bug is only partially there if I switch the rendering API to DX11. While it still forces the option to "Use my monitor's current resolution," it appears that it still functions under Borderless Window, rather than Exclusive Fullscreen.

Here's a screenshot of my specs to hopefully show that I'm not running Dota on a potato and therefore shouldn't be having these problems, I guess?https://my.mixtape.moe/tbavws.PNG

Things I've tried:
- Switching the Rendering API from Vulkan to DX11
-- Works, but not ideal. I would rather use Vulkan.
- Putting "-windowed -noborder" in Dota's launch options via Steam
-- Does nothing, as far as I can tell.
- Verified the integrity of the game cache.
-- Made me feel good about myself, but unfortunately did nothing.

First, that's a malware-infested non-standard domain that is blocked by most isp's and nameservers (so no, I could not reach any of your supplied details).

Second, what exactly is the issue with it?
It has done so for couple years now - if the current display resolution is the same with the game resolution, it switches to Use my monitor's current resolution.
Are you saying that your current display resolution is not 1920x1080@144hz? Then yes, it's a problem.

The game updates frequently, but so do GPU drivers and Windows itself.
The very first thing to do would be to disable Windows Game Bar, DVR and Game mode.
Then, File Explorer to \steamapps\common\dota 2 beta\game\bin\win64\ and Alt+Enter - Compatibility - Disable fullscreen optimizations = checked on the dota2.exe.
Also make sure stuff like GeforceExperience is not altering your configuration on-the-fly i.e. disable any profile for DOTA

First, that's a malware-infested non-standard domain that is blocked by most isp's and nameservers (so no, I could not reach any of your supplied details).

Second, what exactly is the issue with it?
It has done so for couple years now - if the current display resolution is the same with the game resolution, it switches to Use my monitor's current resolution.
Are you saying that your current display resolution is not 1920x1080@144hz? Then yes, it's a problem.

The game updates frequently, but so do GPU drivers and Windows itself.
The very first thing to do would be to disable Windows Game Bar, DVR and Game mode.
Then, File Explorer to \steamapps\common\dota 2 beta\game\bin\win64\ and Alt+Enter - Compatibility - Disable fullscreen optimizations = checked on the dota2.exe.
Also make sure stuff like GeforceExperience is not altering your configuration on-the-fly i.e. disable any profile for DOTA

Might be a good idea to add launch option: -autoconfig_level 2
Run the game once, then remove the above option.

Here, I uploaded the content to a more standard source. Sorry about that.

https://youtu.be/6RrH-em4D4o
This shows what I'm referring to in that it's not saving my borderless fullscreen setting. Every time the screen goes black, that's Dota either leaving or returning to exclusive fullscreen. This also happens with your suggested launch options, unfortunately.

I went through the standard procedures otherwise - Windows itself is up to date, all Xbox related stuff (game bar, DVR, game mode, etc.) is disabled entirely, my GPU driver is up to date, and I also tried that fullscreen optimizations checkbox. No dice.

Looks like automatic switching depending on content type (this only happens with HDMI and DisplayPort connectors, not with DVI).
You can disable that behavior by going to Nvidia Control Panel - Display - Adjust Desktop Colour Settings - Content type reported to the display: Desktop programs
Do it for your other 60Hz monitor as well. I suspect that's the main issue, having miss-matched Hz displays. If you were to disconnect that monitor, I think all your problems would go away.

But it can still be an external program triggering it (like the mentioned Geforce Experience, or the regular per-application Nvidia Control Panel forcing something like DSR or VSync ON, or some other GPU OC or recording software).

Anyway, it should still be borderless window, not exclusive fullscreen.
Easy to test that by adjusting the windows volume with media keys Volume+/-/Mute - if it were exclusive fullscreen, you would not see an OSD for these.

Looks like automatic switching depending on content type (this only happens with HDMI and DisplayPort connectors, not with DVI).
You can disable that behavior by going to Nvidia Control Panel - Display - Adjust Desktop Colour Settings - Content type reported to the display: Desktop programs
Do it for your other 60Hz monitor as well. I suspect that's the main issue, having miss-matched Hz displays. If you were to disconnect that monitor, I think all your problems would go away.

But it can still be an external program triggering it (like the mentioned Geforce Experience, or the regular per-application Nvidia Control Panel forcing something like DSR or VSync ON, or some other GPU OC or recording software).

Anyway, it should still be borderless window, not exclusive fullscreen.
Easy to test that by adjusting the windows volume with media keys Volume+/-/Mute - if it were exclusive fullscreen, you would not see an OSD for these.

Unfortunately, it doesn't look like I'm getting that option with either of my displays. That option sounds like it would fix the issue (along with other miscellaneous things that have been bothering me for a while), but it's simply not there.https://i.imgur.com/iXQtcbS.png

I can tell you that any OSD that would normally show up via borderless (the alt-tab window, volume, Action Center notifications, etc.) are not showing up, so it's most certainly still in exclusive fullscreen. I'm also not seeing any meddling coming from either Nvidia Control Panel or the GeForce Experience.