in setup(). But when I screenshot my app and measure the window in the screenshot, it’s 1068x600px. Coincidentally, that’s exactly how big the youtube player is in a maximized browser window on my PC.
Return values I’m getting:
getWindowWidth() -> 854.
getWindowContentScale() -> 1
isHighDensityDisplayEnabled() -> false
My display resolution is 1920x1080 and I’m on Windows 10.
I just opened the Display settings of Windows and saw an option called “Change the size of text, apps, and other items” which has the value “125%”. This explains it
Yep, that’s it. I just had this problem a week back. corrected it manually like you did. I’m not sure if there’s a way to escape this magnification from Windows OS though? Does this forcibly affect all the apps in the OS or is there a setting in Windows implementation of the App class that can ignore this programmatically, the problem gets annoying and important when talking of distributing the Cinder based applications.
Make sure you enable “High DPI Aware” in your project manifest. This should take care of most problems related to desktop scaling. See also this old post by Shawn Lipowski.
Look for the setting in your Options window. It may look slightly different, depending on the version of Visual Studio you use.
Thanks Paul for the tip. I had no idea Shawn is also a Cinder user, That’s pretty awesome, Shawn is a brilliant Houdini user and instructor (VEX in Houdini), another feather in Cinder’s hat (and vice versa) IMO
So you’re the guy he mentions in his class when he suggests Cinder for realtime applications and he mentions a co-worker of his who works with Cinder. Connecting the dots now, very very cool indeed
This also provides mechanisms for DPI-awareness if you have cause to use them, but the average Cinder app probably does not, and with this PR the default behavior on recent versions of Windows will avoid pixel-scaling as you were seeing.