Windows 8 Has Scaling Issues On High-PPI Displays
crookedvulture writes "High-PPI displays are becoming increasingly popular on tablets and notebooks, but Windows 8 may not be ready for them. On a 13" notebook display with a 1080p resolution, the RTM version of Win8 scales up some desktop UI elements nicely. However, there are serious issues with Metro, which produces tiles and text that are either too small or too large depending on the PPI setting used. That setting, by the way, is a simple on/off switch that tells the OS to 'make everything bigger.' Web browsing is particularly problematic, with Internet Explorer 10 introducing ugly rendering artifacts when scaling pages in both Metro and desktop modes. Clearly, there's work to be done on the OS side to properly support higher pixel densities."
...that MS has been one of the first to do the "device-independent drawing stuff" with GDI, and yet twenty years later, there's still no working device-independent UI from them.
Ezekiel 23:20
I once worked on hardware rendering with a webkit-based browser, and these kind of issues are very common when you're converting between floating-point layout coordinate and integer screen space.
Some rendering pipelines make it harder than others to deal with, especially if you can't control the behaviour of non-integer pixels at the edge of images. To fix it, you have to visit all the conversion sites and decide how you want to handle the conversion. It gets especially tricky if you're scaling and stitching images together that you've uploaded as multiple textures to get around maximum texture size issues. Concatenated transformations through composition layers can be tricky too depending on what your graphics API does.
1080p is just 1920x1080 - that part almost certainly works fine. It's that pixel density has, for years, been within a fairly narrow range (22-27 inch displays all maxing out at 1920x1200 or 1920x1080). The problem is pixel density is now increasing, think apple retina displays, and that's a problem most of us on the software side were never expecting and aren't used to having to cope with. At least not for desktops/laptops (phones is another matter because they are a rapidly maturing product used in a completely different way).
Besides that, different groups will have people who are more or less aware of this problem and trying to deal with it. Microsoft *should* have testing labs for all of these different things, and feedback about a very uneven experience should have moved up and down the chain. But as someone who writes games for a living, most of the stuff I have done in the last 5 or 6 years would look like shit on a 13 inch display at 1920x1080. Everything would be too small unless the screen is 10cm from your face. That's the catch here, we've designed for a single pixel to take up a certain fraction of your personal field of view, suddenly higher density displays come along, to which we initially ask, why, was there something wrong with the old pixel densities? Is this technology actually better or is it just going to be a method to sell expensive video cards. These new displays people are physically positioning the way their old setups were, but well, all of the assumptions about field of view get tossed.
Thanks for the typical obligatory karma whoring post full of snark.
Meanwhile, they did figure it out to the extent it can be.
http://blogs.msdn.com/b/b8/archive/2012/03/21/scaling-to-different-screens.aspx
Meanwhile, Apple has similar issues with their retina display:
http://blog.macsales.com/14111-15-macbook-pro-with-retina-display-lessens-web-experience
http://www.robertotoole.com/2012/06/17/macbook-pro-retina-display/
Meanwhile, let the anti-MS bashfest continue.
The Metro APIs were designed for web front-end programmers, not people who write for real GUI toolkits. You can build quite competent Metro apps in HTML and Javascript, and if you reach any limits, your web shop could hire a third party to write a module in C# or C++ to work around it.
The API for web programmers includes also rules that that apps should be made for a finite set of fixed screen sizes. Not resolutions -- screen sizes. Metro was never designed to be scalable.
This is not only a Windows problem, though. MacOS X on Retina(tm) displays is just as bad, but there the OS draws everything twice as big to begin with and scales down if needed when compositing windows. Apple never cared about hinting anyway, so all controls and labels are just as fuzzy scaled to 125% as always.
"We mustn't be caught by surprise by our own advancing technology" -- Aldous Huxley
That's the catch here, we've designed for a single pixel to take up a certain fraction of your personal field of view, suddenly higher density displays come along, to which we initially ask, why, was there something wrong with the old pixel densities?
Yes, there was. The existing low-density displays require ugly (and often patented) hacks like hinting and subpixel rendering to display fonts at normal point sizes. When the pixel density is increased enough, this all becomes unnecessary. And it looks a lot better when it's done right. Have you ever tried using the new iPad? To me, it was a revelation: with a web page or PDF fully zoomed out, the letters were still incredibly sharp and clear, with none of the usual "cloudiness" that results from standard anti-aliasing techniques.
ClearType on Windows is very nice, but it's still just a hack compared to real high-DPI display. I am looking forward to cheap 4K TVs in smaller sizes (32" or so) so that I can use one of them as a desktop monitor. We've been held back by repurposed 1080p HDTV panels for too long.
Man, don't you know that when MS does it, it's a colossal fuck up, but when Apple does it, it's a feature? I understand it's hard to make the distinction sometimes.
I got here through a series of tubes
What's strange is: my work just bought me an Asus Zenbook Prime and I'm running 150% on it (I nuked the OS to get rid of the crapware and to be able to log on to the domain, so I've actually never seen it stock). I can scale web pages easily by doing a pinch-zoom on the touchpad and they look terrific, including images. (I mean, sure, the images ARE scaled up, which never looks 100% perfect, but it's just not that noticeable, and doesn't look anything the article.)
What they may be noticing is ASUS Splendid Video Enhancement Technology which is turned on by default (I'm told, I didn't install it after reading that people were trying frantically to get rid of it). Basically, it's supposed to "fix" your graphics so they look "more lifelike". But I've seen cases where people report that web graphics were getting very blurred by it, exactly like what the article is showing.
After using 150% and browser scaling for the past week, I've been pleasantly surprised by just how "arrived" high-DPI scaling was in Windows 7. I really didn't think it would work, but it's terrific so far, with ultra-readable text that's incredibly easy on the eyes and looks just as good as Apple's Retina displays.
Peter predicted that you would "deliberately forget" creation 2000 years ago...
Your first link is a very interesting link, which kind of proves that MS doesn't understand dpi since they insist on a "minimum resolution" instead of a "minimum size" for screens for the Metro UI. Way off the point.
Both links on the Apple side of the story, however, are so stupid I have to assume you haven't even had a look at them. Basically, both complain that the UI elements have the same size on the MacBook Retina than on a normal MacBook !!! Right from your second link: "This configuration should offer amazing detail but you don’t actually get any more desktop space". Well, guess what: That was the point, very precisely.
Overall you just proved that MS doesn't know what they are doing and Apple does. Nice way to illustrate an anti MS bashfest. Wait... wasn't that your intent?
Write boring code, not shiny code!
So hold on, super-high resolution displays should only be used so that the rounded corners are more rounded?
Thanks, but no thanks. The entire point of higher resolution displays is displaying more information on the same space. Apple's way of just doubling the resolution for each length is good for backwards compatibility, but it shouldn't be the standard for new applications: they should be designed to take advantage of the high resolution displays, and I don't just mean better text rendering.
You're thinking old-school, and thus are part of the problem. The point of high-DPI displays isn't to have more screen real estate or to display more information in the same space, it's to have sharper text and image display at a usable size. Since this is a transition period, images are going to be worse off than text. I'm sick and tired of displays that are approximately 100dpi or so (given the average 17" laptop display). Display technology has lagged behind every other improvement in technology over the last 15 years. Thank God there's finally a push for higher pixel density. The best of both worlds will be when image and video editing apps make use of the higher resolution while still displaying UI at a reasonable size. Ever wonder why a lot of people have run LCD displays at non-native resolutions? Because without resolution independence, high-res displays present UI and text that is way too small for them to read. Proper resolution independence will allow people to run their displays at native, without worrying about being able to read what's on the screen.
As with anything, early adopters tend to get burnt or otherwise are dissatisfied with the performance. Apple does happen to have a leg up here, with their experience on the iPhone/iPod touch 4. The fact that Apple uses integer ratios for their screens (even on the Macbook Pro where the resolution can be adjusted, the backend renders at an integer ratio) is a big plus as it means that what we see in these screenshots won't happen. I may not like some of Apple's business practices, but they completely win when it comes to presentation and aesthetics. Microsoft would do well to learn some lessons from them.
FC Closer