We are not talking about TV screens here. You don't watch TV 12 inches away from it.I remember when people said that 1080p was pointless on anything 32" and below...![]()
We are not talking about TV screens here. You don't watch TV 12 inches away from it.I remember when people said that 1080p was pointless on anything 32" and below...![]()
Its been a year since I started speculating that the iPhone 6 would have an @3x display, and so far a common reaction is always But Steve Jobs said pixel-doubling was necessary when introducing the iPhone 4!.
Its important to understand why @2x made sense to also understand why @3x does:
1) It was an integer scaling multiplier.
Xcode/Cocoa use a points system for every possible coordinate/dimension. Those dont represent pixel values unless youre using a non-Retina display (@1x). For everything else, the pixel dimensions of elements are found using points * scaling multiplier. For example, an iPhone 5 is seen as being 568x320 points * @2x = 1136x640 pixels.
If you had a floating point scaling multiplier, say @2.5x, youd end up with floating point pixel dimensions as well. For example, a 85x45 points UI element * @2.5x = 212.5 x 112.5 pixels. Oops, fractions of pixels! Since the screen cant render those directly, multisampling will be applied to blend fractions of pixels (think of anti-aliasing). What it would look like is this (on the right):
Image
You dont want this blurry mess. Therefore, you dont want your UI elements to end up with non-integer pixel dimensions. Thats why you want an integer scaling multiplier. In 2010 with the iPhone 4, @2x was chosen in large part because it was the next integer after 1, not because its the double. That means @3x would be an equally good scaling multiplier as long as keeping integer pixel dimensions goes.
2) It didnt require scaling interpolation on older displays
Steve Jobs explained that one pretty clearly at WWDC.
Image
One pixel would become a 2x2 pixel grid. No fancy math had to be done to scale older apps on the iPhone 4. But why does this matter? Because scaling interpolations often reduce quality (not for performance reasons, thats insignificant). Keep in mind however that unlike with the @1x -> @2x transition we had in 2010, this time wed only have a 50% enlargement rather than 100%.
The thing is, a 50% enlargement with interpolation doesnt look worse than a 100% enlargement with pixel-doubling, despite the loss of details due to the interpolation.
See those examples I made with bilinear interpolation (iOS default interpolation when scaling images):
Image
Image
As you can see, older non-@3x-optimized apps would actually look better on an @3x iPhone than non-@2x-opitmized apps did on an @2x iPhone. Add to this the fact that the screen's pixel density would be higher this time around, and the perceived image quality difference would be even smaller.
Would you really be able to tell a difference if the screen was 1080p?
Would you really be able to tell a difference if the screen was 1080p?
I would like it if they went for @4 instead. What would the resolution be then?
It’s been a year since I started speculating that the iPhone 6 would have an @3x display, and so far a common reaction is always “But Steve Jobs said pixel-doubling was necessary when introducing the iPhone 4!”.
It’s important to understand why @2x made sense to also understand why @3x does:
1) It was an integer scaling multiplier.
......
Yes, they should. But the reality is that most apps (even those using AutoLayout) wouldn't magically scale well to a bigger display like it was a responsive website. They would require significant tweaking before they can do that, and I can't see Apple forcing AutoLayout everywhere just yet. That would essentially force developers to redesign/test their app in around a month, unless which their app would probably look like crap on the iPhone 6. Since that's kind of an unrealistic timeframe, it's the consumers that would end up paying in the end. I think Apple will go through a smoother transition than that.
Think of it this way. 1 new row, and 1 new column of icons. *bewm*I just blew your mind!
Something about lag usually shuts them up lol![]()
I would just launch the ios 8 sdk with tools to create apps at the new screen size a few months ahead of timePreviously "new" iOS resolutions were supported by app developers so fast, I really don't think it matters much if they choose some multiple of an existing resolution or just come up with a new one that makes sense.
Early adopters will have to go a month or two with some pixel stretching. No biggie.
Lol one of my friends sent me the 9to5mac article earlier and said
"So Apple iPhone 6 is gonna fail because the great bigger screen isn't big enough since 5" is the minimum these days"
Followed by
"And now we see the screen isn't even 1080p, meanwhile over here at Samsung the note 4 will probably be 4k"
Wasn't sure how to reply to him ��
Something about lag usually shuts them up lol![]()
Of course not. But Android users need something to brag about.
Would you really be able to tell a difference if the screen was 1080p?
Less than 1080p in 2014? Epic fail.
Its been a year since I started speculating that the iPhone 6 would have an @3x display, and so far a common reaction is always But Steve Jobs said pixel-doubling was necessary when introducing the iPhone 4!.
Its important to understand why @2x made sense to also understand why @3x does:
1) It was an integer scaling multiplier.
Xcode/Cocoa use a points system for every possible coordinate/dimension. Those dont represent pixel values unless youre using a non-Retina display (@1x). For everything else, the pixel dimensions of elements are found using points * scaling multiplier. For example, an iPhone 5 is seen as being 568x320 points * @2x = 1136x640 pixels.
If you had a floating point scaling multiplier, say @2.5x, youd end up with floating point pixel dimensions as well. For example, a 85x45 points UI element * @2.5x = 212.5 x 112.5 pixels. Oops, fractions of pixels! Since the screen cant render those directly, multisampling will be applied to blend fractions of pixels (think of anti-aliasing). What it would look like is this (on the right):
Image
You dont want this blurry mess. Therefore, you dont want your UI elements to end up with non-integer pixel dimensions. Thats why you want an integer scaling multiplier. In 2010 with the iPhone 4, @2x was chosen in large part because it was the next integer after 1, not because its the double. That means @3x would be an equally good scaling multiplier as long as keeping integer pixel dimensions goes.
2) It didnt require scaling interpolation on older displays
Steve Jobs explained that one pretty clearly at WWDC.
Image
One pixel would become a 2x2 pixel grid. No fancy math had to be done to scale older apps on the iPhone 4. But why does this matter? Because scaling interpolations often reduce quality (not for performance reasons, thats insignificant). Keep in mind however that unlike with the @1x -> @2x transition we had in 2010, this time wed only have a 50% enlargement rather than 100%.
The thing is, a 50% enlargement with interpolation doesnt look worse than a 100% enlargement with pixel-doubling, despite the loss of details due to the interpolation.
See those examples I made with bilinear interpolation (iOS default interpolation when scaling images):
Image
Image
As you can see, older non-@3x-optimized apps would actually look better on an @3x iPhone than non-@2x-opitmized apps did on an @2x iPhone. Add to this the fact that the screen's pixel density would be higher this time around, and the perceived image quality difference would be even smaller.
Another common comment has been "But shouldn't developers be using AutoLayout constraints, which make apps pretty much resolution-independent? Therefore, who cares about the exact resolution?"
Yes, they should. But the reality is that most apps (even those using AutoLayout) wouldn't magically scale well to a bigger display like it was a responsive website. They would require significant tweaking before they can do that, and I can't see Apple forcing AutoLayout everywhere just yet. That would essentially force developers to redesign/test their app in around a month, unless which their app would probably look like crap on the iPhone 6. Since that's kind of an unrealistic timeframe, it's the consumers that would end up paying in the end. I think Apple will go through a smoother transition than that.
Would you really be able to tell a difference if the screen was 1080p?
We are not talking about TV screens here. You don't watch TV 12 inches away from it.
But what happens if you have an app made for iPhone 5/5S. And you have a UI Element that is say, 999pixels. Then you scale that by 1.5x and you have 1498.5. Then, multisampling will have to be used like you said to blur pixels. Right? Which defeats the purpose of integer scaling...
I would like it if they went for @4 instead.
Less than 1080p in 2014? Epic fail.