Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Petey-ed

macrumors 6502
Original poster
May 17, 2009
273
9
Gizmodo's article brought to light a issue that apple could potentially resolve which is building iOS to handle sub-pixel rendering. I wonder why apple elected not to do this? Sacrifice speed? Increase in cost due to required patents? What are some of the more intelligent techies think about this?
 

FrancoisC

macrumors 6502a
Jan 27, 2009
546
281
Montreal, Qc
Gizmodo's article brought to light a issue that apple could potentially resolve which is building iOS to handle sub-pixel rendering. I wonder why apple elected not to do this? Sacrifice speed? Increase in cost due to required patents? What are some of the more intelligent techies think about this?

I'm not 100% sure about that, but I vaguely remember reading something about subpixel rendering that require the pixel to be in a specific order, like "RGB" one next to the other, and not anything else.

Since the iPad can be used in any direction, and the pixel are obviously not in the same order depending the direction the device is, I guess that must be why...

More info there: http://www.istartedsomething.com/20120303/cleartype-takes-a-back-seat-for-windows-8-metro/
 

hugesaggyboobs

macrumors member
Nov 3, 2012
44
0
I'm not 100% sure about that, but I vaguely remember reading something about subpixel rendering that require the pixel to be in a specific order, like "RGB" one next to the other, and not anything else.

Since the iPad can be used in any direction, and the pixel are obviously not in the same order depending the direction the device is, I guess that must be why...

More info there: http://www.istartedsomething.com/20120303/cleartype-takes-a-back-seat-for-windows-8-metro/

The sub-pixel rendering should theoretically reduce in a significant way pixelation on zoom in/shrinking things smaller. Until then, it's pixelationville.
 

Pakaku

macrumors 68040
Aug 29, 2009
3,134
4,434
The sub-pixel rendering should theoretically reduce in a significant way pixelation on zoom in/shrinking things smaller. Until then, it's pixelationville.

But if you take an RGB screen and flip it upside down, now it's a 'BGR' screen. And if you flip it 90 degrees, the subpixels are stacked vertically...

And if Windows is anything to go by, the rendering is horrible and hurts my eyes, compared to other operating systems.
 

Southernboyj

macrumors 68000
Mar 8, 2012
1,693
69
Mobile, AL
I do believe sub-pixel rendering requires a bit more processing power. If that is true, that could be why. Considering it's only running on an A5 and 512MB of RAM.
 

hugesaggyboobs

macrumors member
Nov 3, 2012
44
0
But if you take an RGB screen and flip it upside down, now it's a 'BGR' screen. And if you flip it 90 degrees, the subpixels are stacked vertically...

And if Windows is anything to go by, the rendering is horrible and hurts my eyes, compared to other operating systems.

Yes I agree.
 

lianlua

macrumors 6502
Jun 13, 2008
370
3
Processing power isn't the issue. Integrated graphics from 2001 can handle it without even blinking.

The issue is that subpixel rendering, as mentioned, does assume a specific subpixel configuration, which means that it only works effectively in a single orientation. Rotate the display, and the hinting throws things off and makes text look worse.

iOS inherited the lack of subpixel rendering from OS X (and MacOS before that). Typeface engineers and designers on the Mac have always been firmly opposed to subpixel rendering and font-smoothing by pixel-hinting because it alters the true form of the typeface. They have always preferred to represent text as it literally appears, rather than take liberties with the typeface designs to make it fit the pixel grid of the display. They use their own antialiasing approach. What this means is that you'll always have an accurate rendering on iOS and OS X, but when font sizes get very small (8-10px), they will be less legible.

On the flip side, on a system that does use font smoothing, you'd be better able to read text at 8-10px, but it would not be shown as accurately. Subpixel rendering creates color fringe/halos and makes text a little chunkier, with the theory that it's easier to read. Some people find the blurring helpful and others find it distracting, just as some people appreciate the sharpness added by pixel hinting and others find it disruptive.

They're just different approaches to the same unsolved problems. It's the same reason Apple limits its retina displays to exact multiples. They prioritize fidelity over other considerations.
 

zhenya

macrumors 604
Jan 6, 2005
6,929
3,677
Sweet. ^^^

I was just going to PM you to ask for your input here. :D
 

Bjango

macrumors member
Jan 4, 2011
61
35
Processing power isn't the issue. Integrated graphics from 2001 can handle it without even blinking.

It can be though, because sub-pixel rendering usually requires the composited output to be completely opaque. As I understand it, if you have a stack of layers and something travels under sub-pixel antialiased text, everything under the text needs to be composited down to a single opaque layer. That's significantly more work than just moving around layers with or without transparent areas.

The issue is that sub-pixel rendering, as mentioned, does assume a specific subpixel configuration, which means that it only works effectively in a single orientation. Rotate the display, and the hinting throws things off and makes text look worse.

This is true. The sub-pixel offsets can be worked out for the other orientations though. You could definitely build a sub pixel text rendering engine that works with RGB and BGR on horizontal and vertical axis.

iOS inherited the lack of subpixel rendering from OS X

...OS X has sub-pixel text rendering. There are some things that disable it though:

- Rotating the display.
- Layer backed views / compositing to non-opaque backgrounds.
- If the developer or website has disabled it.
- If Use "LCD font smoothing when available" is turned off under System Preferences.

Also, we're just talking about text. The same technique can be used for any vector shape rendering, but typically isn't.



It's worth noting that these platforms don't have sub-pixel font antialiasing:
- iOS.
- Android.
- Windows Modern UI (the entire Metro UI uses standard anti-aliasing, even on a PC).
- Microsoft Surface with Windows 8 RT (see above).
- Blackberry Playbook.
- webOS.

The future of mainstream computing for the entire world doesn't use sub-pixel antialiasing.
 

Binarymix

macrumors 65816
Nov 1, 2007
1,121
353
All I remember is when (I believe XP) introduced clear-type it hurt my eyes cause all text would appear to have a pink hue around it.
 

chleuasme

macrumors 6502
Apr 17, 2012
485
75
At some point, you can almost consider there already have sub-pixel anti-aliasing on iOS retina devices: each point of the resolution (1024x768 for every iPad) is subdivized in 4 pixels in hardware (2048x1536).
That's one of the main interests of retina displays with exact 2x resolutions, transfering part of the work needed in software to the hardware directly.
 
Last edited:

lianlua

macrumors 6502
Jun 13, 2008
370
3
It can be though, because sub-pixel rendering usually requires the composited output to be completely opaque. ... That's significantly more work than just moving around layers with or without transparent areas.
That depends entirely on the windowing system used, and it's still well within the capabilities of a GPU from the dark ages. An IGP from 1997 can handle it without blinking.
...OS X has sub-pixel text rendering.
Technically true, but misleading. MacOS did not have subpixel rendering, and OS X did not implement it until 10.2, and even then on a much more limited basis than ClearType, specifically due to the low-resolution LCDs that were becoming popular at the time. What I should have said was that it lacks the aggressive subpixel rendering of other platforms. Apple's algorithms have always been minimally invasive for the purpose of AA only, in that sense just like what Windows 8 now does. What OS X does is heavily favor AA and true placement (smoothing) over subpixel rendering and grid alignment (sharpening).

The same principles are true of iOS, except there is no subpixel rendering at all going on there.

----------

At some point, you can almost consider there already have sub-pixel anti-aliasing on iOS retina devices
No way. The smaller pixels absolutely help deliver superior font smoothing, but it is not at all comparable or equivalent to subpixel rendering.

Retina displays reduce the need for AA and subpixel rendering techniques, because they provide a completely different, third approach to text presentation.
 

chleuasme

macrumors 6502
Apr 17, 2012
485
75
No way. The smaller pixels absolutely help deliver superior font smoothing, but it is not at all comparable or equivalent to subpixel rendering.

Retina displays reduce the need for AA and subpixel rendering techniques, because they provide a completely different, third approach to text presentation.
I meant, it was another way to get anti-aliasing at a sub-pixel level (well, with full pixels in fact):
can't make sub-pixel AA? no problem, let's get the hammer out and put 4x more pixels in our displays. No need to use R, G or B component light of neighbours pixels to fool the brain, we can now play with 4 full pixels for drawing the fonts sharper on a same surface as it would on 1 pixel of a non-retina screen.
The hard work is made once in the hardware to get such screens with high pixel density, rather than in software to smooth the display of fonts (or anything) on large pixels and their light components. The software method in these two cases is very different, of course.
The approach is similar to me, by trying to work at the sub-pixel scale, but with better results with the retina displays approach indeed, as you directly increase the number of pixels and not play with pixels components to get sharper.
Well, and you can't cut the sentence you quoted before the ':', i have never said there was any equivalence and was differentiating points and pixels: i consider retina screens at their non-retina resolution with 4 pixels per point.
Well, I just meant AA become less of an issue once you have 2x retina screens.
 
Last edited:

lianlua

macrumors 6502
Jun 13, 2008
370
3
I meant, it was another way to get anti-aliasing at a sub-pixel level (well, with full pixels in fact):
It's not, though. Retina displays still use the same subpixel rendering and type AA as non-retina displays. Doubling of pixels isn't enough to make up for the difference. 5-6 times the number of pixels and you're getting somewhere.
can't make sub-pixel AA? no problem, let's get the hammer out and put 4x more pixels in our displays. No need to use R, G or B component light of neighbours pixels to fool the brain, we can now play with 4 full pixels for drawing the fonts sharper on a same surface as it would on 1 pixel of a non-retina screen.
Without antialiasing and subpixel rendering, that extra pixel doesn't really achieve very much at all. It's still limited to 45-degree angles by stepping.
Well, I just meant AA become less of an issue once you have 2x retina screens.
That is true.
 

chleuasme

macrumors 6502
Apr 17, 2012
485
75
It's not, though. Retina displays still use the same subpixel rendering and type AA as non-retina displays.
Yes, of course. That's still pixels, they are only smaller. It's still possible to render anything on a screen with AA, and at a sub-pixel level if wanted. And it can only get better with, in general.
It's the case on the retina MBPs if I'm not wrong, at a sub-pixel level. But to my knowledge there is only AA on iOS devices (retina or not), but no sub-pixel rendering.
And I don't know of any other devices/OS using the same approach as Apple, with constrained environment at fixed resolutions, and 'simple' pixel-doubling (... well, not on rMBPs. But as said before, sub-pixel rendering is here to help on OS X. Our discussion is more about iOS I think). Any other platform on 'retina' screens (people using the term only because of high enough pixel densities) do non-integer scaling (I might be wrong with Win 8, though, I think it's supposed to do 2x too). And doesn't it add problem of non-alignement with the pixel grid, making even more critical the need of sub-pixel rendering? I'm not sure what you suppose when you say 'retina'.
Doubling of pixels isn't enough to make up for the difference. 5-6 times the number of pixels and you're getting somewhere.
Hehe yes of course. Well, I'm a patient guy, the 'retina' screens we now have are quite already very nice. That was a big step to reach, with the hardware able to drive them, and with size and battery constraints handeld devices have. It can only get better.
Without antialiasing and subpixel rendering, that extra pixel doesn't really achieve very much at all. It's still limited to 45-degree angles by stepping.
As long as screens use pixels, and working or not at a sub-pixel level (offering more flexibility), that will always be true. The smaller the pixels goes relatively to the use distance, the less it is important.
 
Last edited:

Bjango

macrumors member
Jan 4, 2011
61
35
Windows Surface does have sub-pixel rendering.

It actually doesn't. Well, the Metro interface doesn't. The classic Windows desktop mode does.

A Google image search on screenshots proves this (all the Metro shots are standard AA, all the desktop shots have some ClearType sub-pixel AA text).

https://www.google.com.au/search?q=...a=X&ei=xLToUM-LL8_VkAWx74HYCA&ved=0CDUQpwUoBQ

Doubling of pixels isn't enough to make up for the difference. 5-6 times the number of pixels and you're getting somewhere.

I don't think that's true. Having double the real pixel resolution on both axis is far better than sub-pixel type rendering (yeah, yeah, 3x the resolution if you're using sub-pixels, but that comes at a high cost, including colour fringing and other artefacts).

It's pretty easy to test sub-pixel AA text on iOS, by working out the sub-pixel order and displaying a screen grab with text generated on a computer.

That's what I've done here:
http://drbl.in/fSkV

Maybe your eyes are better than mine, but I don't think the sub-pixel text was noticeably better. It was slightly different, but not better (and by "slightly different", I mean "you have amazing eyesight if you can pick the difference without them side by side").

Technically true, but misleading. MacOS did not have subpixel rendering, and OS X did not implement it until 10.2, and even then on a much more limited basis than ClearType, specifically due to the low-resolution LCDs that were becoming popular at the time.

If you're going to be that picky, then I have to point out that 10.2 wasn't "OS X". It was "Mac OS X". So my statement is entirely correct from a nit-pick standpoint as well (the name change happened February 16, 2012). :p
 
Last edited:

lianlua

macrumors 6502
Jun 13, 2008
370
3
I don't think that's true. Having double the real pixel resolution on both axis is far better than sub-pixel type rendering
I agree, but that's not the comparison asserted. One is not a replacement for the other. Doubling the number of pixels is not enough to eliminate the need for AA, subpixel or otherwise.
If you're going to be that picky, then I have to point out that 10.2 wasn't "OS X". It was "Mac OS X". So my statement is entirely correct from a nit-pick standpoint as well (the name change happened February 16, 2012). :p
10.2 is OS X. Mac OS X is OS X. It's the converse that's not true if you're going to pick nits. But again, missing the forest for the trees.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.