Search Issue Tracker
Fixed in 2020.1.X
Fixed in 2017.4.X, 2018.4.X, 2019.3.X
Votes
1
Found in
2017.4.36f1
2018.4
2019.2.0a5
2019.3
2020.1
Issue ID
1207918
Regression
Yes
Original window doesnt enter fullscreen mode when launching with second display activated
Reproduction steps:
1. Open attached project
2. Build and run the project
3. Make sure "windowed" is unticked
4. Select lower resolution than native
5. Press "Play"
Expected: Window on the first display will be in fullscreen
Actual: Windows on the first display is in borderless fullscreen mode that doesn't fit the screen
Reproducible with: 2017.4.36f1, 2019.2.0a5, 2020.1.0a17
Not reproducible with: 2017.4.35f1, 2019.0a4
Note: Seems to be introduced with case 1040726
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Text render issues and various exceptions in TextCore when using TextSettings option "Match Material Presets"
- NullReferenceException error is thrown when unpacking multiple instances of the same UI Document
- URP Decal Projectors don't render when they are hidden in the Hierarchy, unlike other GameObjects
- Reflection Probe “adjusting number of stops to over or under expose the texture” setting does not update in Scene realtime
- UI Toolkit rendered text breaks when toggling FontWeight styles through code
Resolution Note (fix version 2020.1):
Regression was introduced while attempting to fix case 1040726 (https://issuetracker.unity3d.com/issues/primary-screen-window-size-turns-to-native-when-using-more-than-one-display)
With this new fix, the initial state of the primary display will be based on the current FullscreenMode when multi-display is activated:
- If running in ExclusiveFullScreen or FullScreenWindow mode, the primary display will have a "fullscreen window" matching the native monitor resolution
- If running in Windowed mode, the primary display will have a "borderless window" matching the current width and height
To change the window size on the primary display, call Display.SetParams() *after* activating the primary display.
For example, to force 640x480 windows on both displays:
// Display.Activate() parameters are ignored for the primary display (index 0) so just pass in 0's
Display.displays[0].Activate(0, 0, 0);
// Activate the secondary display to use a 640x480 window
Display.displays[1].Activate(640, 480, 60);
// Force the primary display to also use a 640x480 window
Display.displays[0].SetParams(640, 480, 0, 0);