Search Issue Tracker
Fixed in 2017.1
Screen.SetResolution works incorrectly when DPI scaling is set to anything else than 100% in windowed mode.
Workaround: divide 96 by logical DPI and then multiply that with the width and height of the resolution before calling Screen.SetResolution:
var width = 1920;
var height = 1080;
var dpiMultiplier = 96.0 / logicalDPI;
Screen.SetResolution((int)(width * dpiMultiplier), (int)(height * dpiMultiplier), false);
This bug does not manifest when setting resolution for fullscreen mode (when the last argument is true).
You can obtain logical DPI using this windows API:
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- FBX Importer broken Animation Tab and errors
- [Android]Terrain tiles not rendered correctly on Android devices with Andreno 540 or lower when Terrain.drawInstanced is enabled
- [Licensing] Editor cannot talk to client if username has unicode characters
- MissingMethodException: Method not found: 'UnityEngine.UnityAPICompatibilityVersionAttribute..ctor
- [URP] Cannot assign overlay cameras to a camera stack while in Prefab Mode.