Game not starting in fullscreen


#1

Issue: When starting MT2 it doesnt start in fullscreen
Crash (y/n): n
Platform (Windows/Mac/Linux): Win10_x64
Description: I start the game but the saved value “fullscreen” seems not to work. see the screenshot for a example. and yes, the little steam notification in the right corner flickers. alt-enter twice and then tabbing out and back in fixes it temporary until the next start


#2

I’ve seen things like this in the past, but it’s not happening for me right now; the game does start up in Fullscreen if you’ve set that in the Options window. Can you confirm that you’re setting fullscreen mode through the Options window, and whether you’re setting Fullscreen or Fullscreen Window?

With that said, if I start up in fullscreen and hit alt-enter, it does give me a view very much like what you’re seeing. Pressing alt-enter again goes back into fullscreen, and then doing it a third time finally gets me into a window, and it works correctly after that.

Maybe if I fix the weird behaviour I’m seeing, it’ll also fix the weird behaviour you’re seeing. Clearly I’m doing something slightly wrong, in handling the toggle between windowed/fullscreen!


#3

If i switch to window or fullscreen window via the options (always setting the settings there) then it will freaking out like this.

sometimes toggling off and on the high dpi support switch works first before i need to do the alt-enter and tab trick


#4

Okay, I think I have a fix for this, now.[1].

I’ll put out another build with this shortly, so you can verify whether it’s fixed your issues. The most notable issues in the code were these:

  1. When configured to start up in Fullscreen mode, the engine would actually start up in Fullscreen Window mode.
  2. The engine wasn’t correctly tracking which video mode it had started up in, which sometimes made it not do everything it needed to do during a video mode change.

For example, the game could start up in fullscreen (actually,in fullscreen window due to bug #1, above), but think that it had started up in a window. If that happened, then when you tried to toggle into a window, it thought that it was already in a window, and so didn’t bother creating a window; it just changed the rendering resolution of the fullscreen rendering.

Swapping again would set things to rights, as the main bug was only happening during initial rendering setup, and until after the first fullscreen/window swap happened; the second and subsequent swaps would work correctly.

With this fix, everything should work correctly right from the start.

EDIT: And this is now live in Steam. Please let me know whether this update sorts out this issue for you, @lukiono!


  1. Fixed in the open source VectorStorm engine, in this commit. ↩︎


#5

Thank you, the fix works perfectly and the bug is fixed


#6

Awesome! Thanks for confirming; I’ve now moved this bug report into the ‘Fixed’ category.


#7

I’m sorry to say that I’m having the same problem and i’m running 15.3
This is a fresh install as I only upgraded my pc recently.

in the options Its started with the setting fullscreen window.

If i change the resolution it will go as expected but when I change it back to fullscreen window and restart it does exactly the same thing.

The fullscreen setting works expected so the issue seems to be with fullscreen window.

Windows 10
CPU amd athlon x4 750k
Graphics amd HD 7700


#8

Interesting! There is a bunch of conflicting advice about “fullscreen” vs. “fake fullscreen” in SDL on the Internet, and even in SDL2’s own documentation! I’ll maybe need to dig into SDL’s code to figure out exactly what to believe about the right way to handle things…


#9

Just to clarify:

“Fullscreen Window” doesn’t offer a resolution; it runs at whatever your normal desktop resolution is. The whole point behind it is to run in the same display mode as your regular desktop, so that alt-tabbing between programs doesn’t require a change in display mode.

I’m definitely seeing some weird behaviours if you increase the resolution while in fullscreen mode. (Seems to only be weird when increasing, not when decreasing? Needs more investigation.)


#10

Geez, I’ve spent the whole day banging away at this. I think I have things working properly now, I think?

This latest fix will be included in the next build, which ought to be tomorrow. I just have one or two more bits I want to drop in. :slight_smile:


#11

Confession: I am a bit unusual among game developers in that I prefer to have just a single-monitor on my computer; Almost every other developer I know prefers 2 or even 3-monitor setups.

Issues:

  1. Right now, MMORPG Tycoon 2 doesn’t offer any way to specify which monitor to go fullscreen on. Is that something most games provide? I feel like I’ve seen that option a couple times, likely in Blizzard games, and maybe Skyrim? And it’s likely that a bunch of games would hide the option if there’s only one screen, so I’d never have seen it.

  2. In the currently released build, we don’t “capture” the cursor into a fullscreen window. So if you go fullscreen, you can presumably still move your cursor over to the other monitor and interact with stuff over there. (I’ve never tested this; don’t know whether it works, or even whether it’s desired). This non-captured mouse causes problems in Linux builds, but should be benign for OSX and Windows builds. Anybody have opinions on this? Is this something I should make an option, or is capturing the mouse okay? Or should I just set only the Linux build to capture the mouse in fullscreen modes, and leave Windows/OSX alone?

Interested in folks’ thoughts, if anybody’s playing the game on a multi-monitor setup!


#12

Seems to be fixed :smiley:

I only run in single monitor so I don’t have any real world feedback but I would personally think that having it not capture the cursor would be useful if you were playing a game and wanted to check email for instance.

In tycoon games there are generally times where you want to leave it on fast forward for a while and again being able to use the cursor in other application on a second screen might be useful.