Space Pirates and Zombies 2

Space Pirates and Zombies 2

View Stats:
Euphytose Nov 20, 2015 @ 12:22pm
Unity, DX11, and exclusive fullscreen mode.
This thread is for the devs, mainly.

I dug around and finally understood why Unity simply refuses to run in true fullscreen, aka exlusive fullscreen.

As a dev you basically have two choices when building the game, either you force everybody to use exclusive, or you give the choice between windowed and fullscreen windowed, aka fake fullscreen.

The problem with fullscreen windowed is that it lowers performances by quite a lot, and adds input lag.

I know that if you alt tab in the current build of Unity, while using exclusive fullscreen, the game will simply crash.

I understand that it's probably something you want to avoid, but for some people, alt tabbing never happens, and we would greatly benefit from using exclusive fullscreen mode.

Apparently you can "switch" at any time when you upload a new build but of course this would require a separate build branch.

The only workaround currently is to force Unity into D3D9 mode using the start command, which gives access to true fullscreen. However there may be side effects on the graphics depending on the game.

I hope you take this into consideration, as in my specific case, being forced into borderless windowed would mean no purchase.

If you make the game 100% usable with slightly worse graphics in D9 mode, then it's perfectly fine. As long as I can get true fullscreen. And I'm certainly not the only person with that mindset. I'm not saying this the angry way, but rather informative. SPAZ 1 was a very responsive game with next to no perfs issues and it felt great to play. If SPAZ 2 becomes sluggish and unresponsive this won't be very good at all.

Edit: Ok. Actually the game doesn't crash, it merely stops the processing, effectively pausing the game. So it's only an issue if you're using some kind of P2P MP model.
Last edited by Euphytose; Nov 20, 2015 @ 12:37pm
< >
Showing 1-15 of 46 comments
DeimosEvotec Nov 20, 2015 @ 2:27pm 
If it can run on the devs potato pc(his words), performance shouldn't be a problem.
Don't know how much of a difference the input lag would make, but that aside if this can be changed in the build option of unity (like you said if you mean compiling a new build with "uploading")than it could just be an option in the beta tab for the game.
Gower Nov 21, 2015 @ 9:16am 
If there is no borderless windowed mode, then I am not going to buy the game. No matter what.
Blorf  [developer] Nov 21, 2015 @ 9:40am 
Currently we use DX9 for expanded compatibility. The extra features of DX11 won't add anything to the look of the game so we opted to got for the most compatible possible rendering scheme.

Windowed mode wise, when testing multiplayer I use a couple of windows and run two games locally, talking to each other. I am not sure about a borderless windowed mode but I will talk to Richard to see what is required. I generally play full screen. The game alt-tabs fast, so I am not 100% sure if it is playing true full screen or borderless windowed
Euphytose Nov 21, 2015 @ 9:46am 
Originally posted by Gower:
If there is no borderless windowed mode, then I am not going to buy the game. No matter what.
Why? This mode is only useful for one thing: Faster alt-tabbing. And by faster I mean, saving 2 seconds.
Now, the downsides are worse perfs and increased input lag.

Originally posted by blorf:
Currently we use DX9 for expanded compatibility. The extra features of DX11 won't add anything to the look of the game so we opted to got for the most compatible possible rendering scheme.

Windowed mode wise, when testing multiplayer I use a couple of windows and run two games locally, talking to each other. I am not sure about a borderless windowed mode but I will talk to Richard to see what is required. I generally play full screen. The game alt-tabs fast, so I am not 100% sure if it is playing true full screen or borderless windowed
Glad to hear there's a true fullscreen option. That's what I wanted to know.

If you want to know whether it's running borderless windowed or true fullscreen, simply take a look at the taskbar when you tab back in the game. If it briefly loses the Aero theme and shrinks, it's true fullscreen.
Last edited by Euphytose; Nov 21, 2015 @ 9:47am
"The problem with fullscreen windowed is that it lowers performances by quite a lot, and adds input lag."

Uhm, not quite. The input lag is there because vsync is forced on, which is hardly a problem for a game like SPAZ. This isnt an FPS. And performance is lowered only in some games, most run just the same. Fullscreen borderless windowed mode I consider to be the standard option/setting these days and it saddens me greatly when games dont have it (which is thankfully becoming a very rare thing these days).
Last edited by ❗️❗️ Annex ❗️❗; Nov 21, 2015 @ 10:20am
Euphytose Nov 21, 2015 @ 10:23am 
Originally posted by Annex:
"The problem with fullscreen windowed is that it lowers performances by quite a lot, and adds input lag."

Uhm, not quite. The input lag is there because vsync is forced on, which is hardly a problem for a game like SPAZ. This isnt an FPS. And performance is lowered only in some games, most run just the same. Fullscreen borderless windowed mode I consider to be the standard option/setting these days and it saddens me greatly when games dont have it (which is thankfully becoming a very rare thing these days).
No, v-sync is another story. Even with v-sync forced off there's a noticeable increase in delay with borderless windowed. And it's a problem for every kind of game. Input lag feels terrible no matter what type of game it is.

Fullscreen is the best option in every way apart from alt tab switching. Borderless windowed renders the desktop, and it's completely useless, just a performance drain, which in some cases is actually quite significant.

If you really need to alt tab that often, maybe consider quitting the game and playing when you have time?
Last edited by Euphytose; Nov 21, 2015 @ 10:24am
Gower Nov 21, 2015 @ 11:48am 



Originally posted by Euphytose:
Originally posted by Gower:
If there is no borderless windowed mode, then I am not going to buy the game. No matter what.
Why? This mode is only useful for one thing: Faster alt-tabbing. And by faster I mean, saving 2 seconds.
Now, the downsides are worse perfs and increased input lag.

I run stuff in the background that doesn't function with a fullscreen game. It has to be windowed or borderless windowed.
"Even with v-sync forced off there's a noticeable increase in delay with borderless windowed."

I have never seen any noticeable increase in delay or performance impact when using borderless windowed, in any game (least in the last 5 years). Playing Fallout 4 with it on right now and there are no issues. Everything responds instantly without delay. Youd have to be running win 7 or older to see a performance difference (or a correspondingly old game).

Running in borderless mode also makes interacting with secondary monitors much smoother/easier (which I do every few minutes). Having to tab out of the game each time or having it minimize the moment it loses focus is beyond annoying.

Many games also have issues when being tabbed out. Assasins Creed Syndicate for example which just came out thankfully had a day 1 patch to fix just such an issue, "Fixed Alt+Tab issue in Fullscreen mode" .
Last edited by ❗️❗️ Annex ❗️❗; Nov 21, 2015 @ 12:47pm
Euphytose Nov 21, 2015 @ 1:03pm 
You don't "see" it because you're not used to having next to input delay. It's technically impossible that the delay stays the same. I wouldn't be so hellbent on having true fullscreen if it didn't have a clear advantage in that regard.

And same deal with performances. Rendering desktop versus not rendering means borderless windowed will automatically have worse perfs. Whether it's impactful depends on the engine and your rig.
So if the impact is 1%, id rather have borderless windowed and a stable game that allows me to quickly shift focus between monitors than having to continually deal with alt tabbing + minimizing. Ive been gaming on PC since 1993 so I have plenty of experience with games that dont support borderless since borderless hasnt been popular for all that long (World of Warcraft was one of the first to include it). While Win7 and prior had a negative impact, since win8 you get full performance in a windowed game.

I just did some borderless vs dedicated fullscreen tests in Fallout 4 and there is absolutely no difference between the responsiveness of the game. In borderless mode DWM also takes up between 0 and 1% of CPU power, being almost always at 0%, so its hardly causing any noticeable impact. Everything in windows these days is rendered via directx, including the desktop, so the days of crappy GDI and windows 7 are well over.

Finally one of your original comments stating "I know that if you alt tab in the current build of Unity, while using exclusive fullscreen, the game will simply crash" doesnt hold true for all Unity games. Not sure what game youre testing with, but Satellite Reign which is Unity 5 and runs dedicated fullscreen alt tabs out just fine without crashing.
Last edited by ❗️❗️ Annex ❗️❗; Nov 21, 2015 @ 5:38pm
Euphytose Nov 22, 2015 @ 4:48am 
Satellite Reign doesn't run dedicated fullscreen. Only if you force the game to run in DX9, which doesn't have the problem I'm talking about. And you didn't read my edit. The games don't crash, they stop processing. Which is a big problem if you're hosting a game on your machine, but not so much otherwise.
Halfgeek Dec 1, 2015 @ 8:48pm 
Generally, you don't need DX11 unless you need and use some advanced AA, shadows and tessellation features, without those, DX9 is very capable.

DX9 is still very powerful:
http://store.steampowered.com/app/258520/

Able to produce awesome visuals with good performance.
Kitsune Dec 2, 2015 @ 9:02am 
All Unity games can be run in borderless window mode by adding -popupwindow to the execution path. I do it all the time so I can quickly scroll to other applications on my other monitors without having the game pause or be interrupted.
Jᴧgᴧ Dec 22, 2015 @ 1:14pm 
Originally posted by blorf:
Currently we use DX9 for expanded compatibility. The extra features of DX11 won't add anything to the look of the game so we opted to got for the most compatible possible rendering scheme.

Windowed mode wise, when testing multiplayer I use a couple of windows and run two games locally, talking to each other. I am not sure about a borderless windowed mode but I will talk to Richard to see what is required. I generally play full screen. The game alt-tabs fast, so I am not 100% sure if it is playing true full screen or borderless windowed

Bear in mind - if you decide to go the borderless windowed route, you immediately lock out SLI and Crossfire users from utilizing their additional cards. It is a major mistake in more demanding games, but I have no idea how demanding SPAZ 2 will be.
Euphytose Dec 22, 2015 @ 4:12pm 
Borderless windowed has much more problems than simply locking out SLI users. The lone saving grace is the faster alt tab. But honestly if you can't wait 1-2 seconds to alt tab, just stop playing the game and finish the task you're alt tabbing for. Steam Overlay takes care of most things you'd need to alt tab for these days anyway. If the game lacks a true fullscreen option I will sadly not be buying it. And I wish it were an obligation to have to state that on the store page. Many games I bought didn't have that option and now they're collecting dust in my library.

SPAZ 2 will use Unity, which lacks multithreading support. And no, 80% load on a single core isn't multithreading, sorry. So, right off the bat, the perfs won't be really good unless you OC your CPU. In my opinion Unity is a terrible engine and I have no idea why so many devs use it. I guess it must have something really good about it, but I'm no dev, so I wouldn't know. I just know that, as a player, all games running on Unity have poor performances compared to what an engine with multithreading support would give.

We'll just see when we get our hands on the first public version, but if the framerate tanks, you'll know why.

PS: Multithreading isn't mandatory for all games. SPAZ 1 didn't have multithreading and it ran great. Games that aren't 3D usually can get away with using only one core. But whenever a 3D game has most of its load on one core, you'll go from 200 fps to 20 in a matter of seconds depending on the situation. All the while your GPU is not even close to being maxed.
Last edited by Euphytose; Dec 22, 2015 @ 4:16pm
< >
Showing 1-15 of 46 comments
Per page: 1530 50