Search Unity

Resolution setting issues (2019.2.16f1)

Discussion in 'Windows' started by kickstep, Dec 19, 2019.

  1. kickstep

    kickstep

    Joined:
    Jan 29, 2013
    Posts:
    13
    We've updated our game to use 2019.2.16f1 which thankfully fixes the Exclusive fullscreen alt+tab and resolution switching lock.

    Unfortunately now I've noticed the game no longer responds to command line arguments for resolution as per
    https://docs.unity3d.com/Manual/CommandLineArguments.html

    The game now also does not save resolution settings. It always boots up to desktop display adapter settings.

    Is there something major going on with Windows windowing support? Very problematic lately.

    Cheers
     
  2. kickstep

    kickstep

    Joined:
    Jan 29, 2013
    Posts:
    13
    Correction -- Unity does try to boot with last screen resolution settings. *However*

    Unity universally fails to set exclusive fullscreen resolution on startup. All machines we can test on (and for many players reporting it). It is always booting at desktop resolution because of this failure. This means we have to manually set resolution a second time in-game.

    Game starts up at the correct resolution when in one of the other non-exclusivefullscreen window modes.


    Failed to apply requested ExclusiveFullScreen resolution (800x600)...will try again
    (Filename: C:\buildslave\unity\build\PlatformDependent/WinPlayer/ScreenManagerWin.cpp Line: 475)



    Similarly, I've checked that the command line options do work, but again, they fail if the last window mode is exclusive fullscreen (and no longer debug log out a failure like w/o override). If you force the window mode, such as with -screen-fullscreen 0, then it will apply.

    Command line example:
    -screen-width 1600 -screen-height 900


    The real issue

    It seems Unity standalone player is unable to boot into exclusive fullscreen at resolutions other than the desktop resolution (and therefor fallsback on this resolution). I'm not sure if it's unreliable or simply impossible. We haven't been able to get a single machine to boot up using the last used exclusive fullscreen resolution.
     
    futurlab_xbox likes this.
  3. timke

    timke

    Joined:
    Nov 30, 2017
    Posts:
    407
    Hey, thanks for posting this.

    First off: Did you set the Fullscreen Mode to Exclusive in the project's Player settings?

    When you specify the screen command-line parameters
    -screen-fullscreen 1
    it will default to "Fullscreen Windowed" mode unless the Fullscreen mode has been specified in either the PlayerPrefs or the default values specified in the project's Player settings.

    I verified with 2019.2.16f1 (using a new/empty project) that if I set the Fullscreen mode to "Exclusive Fullscreen" under the Player's Resolution and Presentation settings and then run the app using the
    -screen-wdith 1600 -screen-height 900
    command line parameters, it will start in Exclusive Fullscreen mode.

    I think what happened is some improvements we made to Player settings are causing side-effects with command-line parameter functionality.That is, we finally fixed a long standing issue were changing "screen" parameters under Player settings for an existing project didn't actually take effect after rebuilding and running the project. The reason: the "old" settings saved in PlayerPrefs, i.e. the Windows Registry, were overriding the new defaults set by the build. Now, changing Fullscreen Mode in the Player settings will actually take effect in the next build.

    Unfortunately, this change has now exposed a flaw in the command-line parameters:
    -screen-fullscreen
    parameter doesn't allow you to specify the "mode" only toggle fullscreen on/off.

    So, could you please do the following:
    1. Verify if setting Exclusive Fullscreen mode the your project's Player settings (and rebuilding) actually fixes the command-line problem
    2. If it doesn't, then please file a bug so we can investigate this further, the
    Failed to apply requested ExclusiveFullScreen resolution
    could indicate another problem
    3. Please file a documentation bug (i.e. Report a problem on this page) for the command line parameters documentation. We need to be clear that
    -screen-fullscreen
    doesn't actually set the Fullscreen Mode but uses the current Fullscreen Mode setting
    4. If you want, file a Feature Request to add a command-line argument to actually set/override Fullscreen Mode, e.g.
    -screen-fullscreenmode


    Thank you for reporting this problem as it helps us understand what the expectations are for settings and configuration options.
     
    futurlab_xbox and doarp like this.
  4. kickstep

    kickstep

    Joined:
    Jan 29, 2013
    Posts:
    13
    Hi timke,

    Thanks for your response.

      • The standalone Player Settings for Fullscreen Mode is set to "Fullscreen Window.".
      • However since the game last executed in ExclusiveFullscreen, when it starts up with -screen-fullscreen 1, it seems to attempt to use ExclusiveFullscreen.
      • For some strange reason when executing it with command line arguments, it fails to produce exclusive fullscreen mode (and defaults to the highest available window mode) -- similar to if there is no command line -- however it no longer logs out the "Failed to apply requested ExclusiveFullScreen resolution"
      • Command line arguments work fully if "-screen-fullscreen 0" or if last window mode was anything other than ExclusiveFullscreen.
      • I am not directly changing any player prefs, and instead just calling Screen.SetResolution and letting it change Unity's internally managed settings.

    1. The
      Failed to apply requested ExclusiveFullScreen resolution
      bug is the real concern we are having. The game just cannot start exclusive fullscreen. Every time we get this error, players are getting this error, and it just seems to default to the highest sync option available.
    2. I just reported that
    3. I'm happy without this, I just need to be able to break out exclusive when there are issues.

    Getting to the real issue -- is there a reason why our game is reliably failing to enter exclusive fullscreen at specific resolutions on startup? If that was the last setting it successfully sets it to the desktop resolution. For example:

    1. Start the game.Windows is running 2560x1440p@60hz. The game runs at this
    2. Successfully set the resolution to 1920x1080p@60hz in exclusive fullscreen using Screen.SetResolution. All is working.
    3. Restart the game and get the error Failed to apply requested ExclusiveFullScreen resolution (1920x1080)...will try again. The game is running at 2560x1440p again.

    Thanks again
     
  5. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    I just tried this on an empty Unity project and it seems like it works for me too (I couldn't get it to output any failed to apply resolution errors, and it did start up in non-native resolution). To be honest we will need to look at your bug report to know what's going on here. Do you have a case # you can share (just the number, not the link)?
     
  6. ruudvangaal

    ruudvangaal

    Joined:
    May 15, 2017
    Posts:
    27
    Any news on this? I've not been able to get Unity 2019.4 into fullscreen using commandline arguments for a year now (and hide that taskbar).
     
    Last edited: Mar 9, 2022
  7. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,674
    Unfortunately I don't think we ever received a bug report. Are you sure you're facing the same issue?
     
  8. TheFalconeerDev

    TheFalconeerDev

    Joined:
    Sep 18, 2019
    Posts:
    95
    Something is incredibly freaky with startup resolutions, some players are getting double their native resolution, constraining the mouse to the left bottom25% of the screen. It seems to do with dual screens. First time only, if they manually set the resolution in the game settings it fixes itself forever.

    Already changed the default resolution to 1080p but this solves nothing..