And then there were 4 (really...3)
by Brian Szatkowski · in iTorque 2D · 06/07/2010 (1:08 pm) · 16 replies
Head to the Apple website now and you are greeted with the new iPhone 4 splash page. The slogan says it all:
"This changes everything. Again."
You got that one right, Steve Jobs.
The new iPhone brings with it yet another resolution (960x640) with which we must contend. I guess that beat the iTV to market but the difference in resolution makes the modifications to iTGB/T2D/whatever-we're-calling-it-now that much more needed. May I suggest that we just get a "Custom" resolution field for the iDevice settings?
"This changes everything. Again."
You got that one right, Steve Jobs.
The new iPhone brings with it yet another resolution (960x640) with which we must contend. I guess that beat the iTV to market but the difference in resolution makes the modifications to iTGB/T2D/whatever-we're-calling-it-now that much more needed. May I suggest that we just get a "Custom" resolution field for the iDevice settings?
About the author
#2
I only see the need for automatic detection of it basing on the EAGLView bounds
Thats why I was a bit puzzled when I saw that 1.4 invested time on implementing a "multiple hardcoded path" solution instead of just finally asking the device about its screensize.
That way it will never be a topic again and it will also be in complyance with the guidelines of iPhone development (ask the device what it can do, don't assume it)
After all, the desktop side had this possibility since day 1 cause forcing all devs into a single resolution would have lead to some very ugly backfire ;)
06/07/2010 (2:21 pm)
I don't see a need for custom resolution (although its cool for a device like the first gen ipad with its totally underspeced gpu fillrate wise)I only see the need for automatic detection of it basing on the EAGLView bounds
Thats why I was a bit puzzled when I saw that 1.4 invested time on implementing a "multiple hardcoded path" solution instead of just finally asking the device about its screensize.
That way it will never be a topic again and it will also be in complyance with the guidelines of iPhone development (ask the device what it can do, don't assume it)
After all, the desktop side had this possibility since day 1 cause forcing all devs into a single resolution would have lead to some very ugly backfire ;)
#3
06/07/2010 (2:52 pm)
I had a thought about the new device - especially the ultra retina screen - how are our PVR images going to look - if you look close at a 480x320 they are not so good - with all that dpi, surely they will look pretty poor?
#4
Now that the Retina display is available for the iPhone, how long before a new iPad 2.0 comes out with that display technology? Will it's resolution double to 2048x1536 or will it standardize to some typical resolution like 1900x1600 or 1280x1024?
Hopefully, the "more elegant solution" to which Michael aspires will address these and other questions before they become an issue.
@Scott - I just tried to access the Apple iPhone Dev forum to inquire about how the Retina display will affect not only PVR textures but any graphical data that was designed for the 480x320 resolution. Will current apps just be scaled as they are in the iPad?
@Michael - Thank you for your prompt feedback (and for keeping on top of things)!
06/07/2010 (3:26 pm)
@Marc - Taking things a step further, Apple suggests that we code at a granular level (down to the functions we wish to use) instead of just by named platform. While what you suggested is a perfect solution for our current resolution needs, I can foresee future requests (as I myself have had some unique ideas--especially with the advent of the iPad) where one might wish to have a hybrid-sized game content area surrounded by other content-related things such as chat/browser functionality, etc. My thought is, if we don't need all of the space for our main content, we shouldn't use it. Regardless, I am happy with the progress that is being made.Now that the Retina display is available for the iPhone, how long before a new iPad 2.0 comes out with that display technology? Will it's resolution double to 2048x1536 or will it standardize to some typical resolution like 1900x1600 or 1280x1024?
Hopefully, the "more elegant solution" to which Michael aspires will address these and other questions before they become an issue.
@Scott - I just tried to access the Apple iPhone Dev forum to inquire about how the Retina display will affect not only PVR textures but any graphical data that was designed for the 480x320 resolution. Will current apps just be scaled as they are in the iPad?
@Michael - Thank you for your prompt feedback (and for keeping on top of things)!
#5
06/07/2010 (3:42 pm)
Brian, my game runs pretty well on 3GS with PNG all the way and looks way better. The reason I have to have PVR is because of the slower devices. So - in theory - the universal app could have high res and std res and PVR BUT we need some way to detect this and force datablock loading to ignore PVR and favour PNG for the higher res devices. Is there something in the iPhone SDK that Torque could use to handle these scenarios?
#6
I just came across this (dated) article on Ars Technica that seems to address this exact issue:
iPhone dev: Determining your platform
So long as the system function used in that solution (sysctlbyname) is not deprecated, I don't see why it cannot be easily extended to include this and future iDevice additions.
I think this solution can address Michael's need for an elegant solution, Marc's suggestion for compliance, and everyone's need for basic usability.
Thoughts?
*EDIT: I just found an internal reference to the above-found article as "nice" but likely to be rejected as a hack by Apple (http://www.torquepowered.com/community/forums/viewthread/115747), so, I guess you can disregard that suggestion.
06/07/2010 (4:25 pm)
Hi guys;I just came across this (dated) article on Ars Technica that seems to address this exact issue:
iPhone dev: Determining your platform
So long as the system function used in that solution (sysctlbyname) is not deprecated, I don't see why it cannot be easily extended to include this and future iDevice additions.
I think this solution can address Michael's need for an elegant solution, Marc's suggestion for compliance, and everyone's need for basic usability.
Thoughts?
*EDIT: I just found an internal reference to the above-found article as "nice" but likely to be rejected as a hack by Apple (http://www.torquepowered.com/community/forums/viewthread/115747), so, I guess you can disregard that suggestion.
#7
And no the ipads resolution won't go up to 1080p. 720p sounds more reasonable.
Although the SGX545 is stronger they would need a dual or tri sgx 545 to power 1080p, boosting the price through the roof (its already now close to inacceptable expensive for something with its joke diskspace and lack of any current, last, or last-last-last generation portable device)
Aside of that, the screen they use is pretty expensive.
I doubt we will ever see Apple selling the hardware in the range of what they cost them. Their margin has hardly never dropped below 30%+
06/07/2010 (4:29 pm)
@Brian: Thats exactly why I would use the EAGLView Bounds (more specifically width - height). They will always work, no way how you use it as thats the GL drawing area. They can never fail!And no the ipads resolution won't go up to 1080p. 720p sounds more reasonable.
Although the SGX545 is stronger they would need a dual or tri sgx 545 to power 1080p, boosting the price through the roof (its already now close to inacceptable expensive for something with its joke diskspace and lack of any current, last, or last-last-last generation portable device)
Aside of that, the screen they use is pretty expensive.
I doubt we will ever see Apple selling the hardware in the range of what they cost them. Their margin has hardly never dropped below 30%+
#8
06/07/2010 (8:09 pm)
@Scott: One solution I can think of is to have PVRs a free in-game download for older devices. It might need some hackery, though.
#9
06/07/2010 (8:40 pm)
Regarding the issue of device detection, it appears as though the Unity engine provides a script function ("iPhoneSettings.generation()") that returns the device model and generation (iPod 1st gen, iPod 3rd gen, iPhone 3G, iPhone 3GS, etc..). At least this is the impression I got from reading through some of their forum threads. I assume they must be providing this information through the standard API. This is only my interpretation based on what I read on their forums, so I could be wrong. Anyone on here has worked with Unity and can verify this?
#10
The use of it though is questionable aside of deciding if it is pre 3GS, 3GS or iPad to switch graphical quality and usage of alpha blending, because you don't want to have large scale switching around for the sake of it (also aside of those 3 distinctions the only minor difference is the difference between iphone 3G and itouch 2nd gen)
06/07/2010 (8:51 pm)
Yes I work on a regular base with it (dreamora over there and on about any other place than this :) ) and there is such a property.The use of it though is questionable aside of deciding if it is pre 3GS, 3GS or iPad to switch graphical quality and usage of alpha blending, because you don't want to have large scale switching around for the sake of it (also aside of those 3 distinctions the only minor difference is the difference between iphone 3G and itouch 2nd gen)
#11
I don't mind excluding the oldest devices, if I know for sure that anyone with one of those older devices will definitely not d/l my game, as I don't want bad reviews because the games runs slow. That would dent my credibility right there.
I saw your comment that the new OS will not run on older devices, so it looks as though that is one possible solution. What about the iPhone 3G though? I thought that was similar to the iPod 1st gen?
06/07/2010 (9:28 pm)
Yes, I agree about the model distinctions. At the moment my only concern is pre 3GS, but that might change once the 4G is out, which will depend on how fast the A4 processor runs compared to the CPU used on the 3GS.I don't mind excluding the oldest devices, if I know for sure that anyone with one of those older devices will definitely not d/l my game, as I don't want bad reviews because the games runs slow. That would dent my credibility right there.
I saw your comment that the new OS will not run on older devices, so it looks as though that is one possible solution. What about the iPhone 3G though? I thought that was similar to the iPod 1st gen?
#12
I just hope for the sake of apple that they upgraded the crap gpu in the A4 cause if it is the 3GS gpu once again, the 4th gen iphone suffers the same fillrate super bottleneck as the ipad :(
iPhone 3G / 2nd gen itouch can install it but lose some features like multitasking etc. But yes they are indeed not that much faster than 1st gen devices normally
all in all, if apple hasn't solved the major problem with the appstore, we are looking for problems anyway.
the major problem I talk about is that you can buy stuff through itunes which is a no go as long as itunes does not remember the device generations registered against the library and thus allows you to buy apps that technically can not run at all (thats a big plus of the android marketplace. its only available on the device)
06/07/2010 (9:29 pm)
the cpu speed of the A4 is pretty well known from the ipad.I just hope for the sake of apple that they upgraded the crap gpu in the A4 cause if it is the 3GS gpu once again, the 4th gen iphone suffers the same fillrate super bottleneck as the ipad :(
iPhone 3G / 2nd gen itouch can install it but lose some features like multitasking etc. But yes they are indeed not that much faster than 1st gen devices normally
all in all, if apple hasn't solved the major problem with the appstore, we are looking for problems anyway.
the major problem I talk about is that you can buy stuff through itunes which is a no go as long as itunes does not remember the device generations registered against the library and thus allows you to buy apps that technically can not run at all (thats a big plus of the android marketplace. its only available on the device)
#13
So, is it true that the GPU is integrated into the A4, and the version of the A4 that is used in the current iPad has the old GPU from the 3GS? If that's the case, it's a pretty bad decision to upgrade the CPU and screen resolution but still use a GPU that is over a year old. I find that quite surprising.
Also, the point you made about the appstore allowing downloading of apps that may not even run is a serious problem. I've seen review comments like "it crashes, don't buy it" quite often, whereas further down the review list there are loads of happy customers. So I guess that explains some of the bad reviews (perhaps they never upgraded their OS, or something like that). I think mobile gamers are different from PC gamers, in the sense that many of them are just casual gamers who don't appreciate the capabilities of the devices, and probably never think about upgrading their OS. PC gamers tend to be more technically minded, and usually keep upgraded with the latest device drivers and latest versions of software etc.
I think Apple should make the OS upgrade free, and just do an automatic upgrade so that everyone is current. How hard could that be?
06/07/2010 (10:12 pm)
I've searched for information regarding iPhone 4 specs, and I can't find anything about GPU specs. They've increased the number of pixels by a lot, so I was assuming a new and faster GPU. I hope so!So, is it true that the GPU is integrated into the A4, and the version of the A4 that is used in the current iPad has the old GPU from the 3GS? If that's the case, it's a pretty bad decision to upgrade the CPU and screen resolution but still use a GPU that is over a year old. I find that quite surprising.
Also, the point you made about the appstore allowing downloading of apps that may not even run is a serious problem. I've seen review comments like "it crashes, don't buy it" quite often, whereas further down the review list there are loads of happy customers. So I guess that explains some of the bad reviews (perhaps they never upgraded their OS, or something like that). I think mobile gamers are different from PC gamers, in the sense that many of them are just casual gamers who don't appreciate the capabilities of the devices, and probably never think about upgrading their OS. PC gamers tend to be more technically minded, and usually keep upgraded with the latest device drivers and latest versions of software etc.
I think Apple should make the OS upgrade free, and just do an automatic upgrade so that everyone is current. How hard could that be?
#14
My hope is that they change the number on the chip basing on the cpu while the gpu can change without it, so that it the iphone 4 finally gets an SGX 545
The iPad uses the A4 with the 3GS gpu, right. There wasn't much to be done for apple. Designing such a chip takes 6-12 months, yet the SGX545 entered engineering sample state in early 2010 so months too late for the ipad chip.
as for crash reports: those are more commonly not related to the generation (unless you sold it for pre 3GS yet used more than 20-25MB of RAM at max)
And the os 4 upgrade is free from what mentioned. it was previously required due to contractual bindings between apple and phone providers that itouch users had to pay (those were the only ones that required it and even those only if they were none devs as Gold Masters of new os always upgraded for free)
And yupp, mobile gamers are casuals, they want easy stuff that just works, is engaging yet usable in short sessions.
as for being up to date on the os though: the only ones that aren't are people you can commonly ignore anyway cause those are the userst hat never fire up itunes. cause if they did, itunes would point out the upgrade very visible.
06/07/2010 (10:34 pm)
Right, the A4 is an all in one cpu-gpu-ram-addon chip solution and is what is used on the iPadMy hope is that they change the number on the chip basing on the cpu while the gpu can change without it, so that it the iphone 4 finally gets an SGX 545
The iPad uses the A4 with the 3GS gpu, right. There wasn't much to be done for apple. Designing such a chip takes 6-12 months, yet the SGX545 entered engineering sample state in early 2010 so months too late for the ipad chip.
as for crash reports: those are more commonly not related to the generation (unless you sold it for pre 3GS yet used more than 20-25MB of RAM at max)
And the os 4 upgrade is free from what mentioned. it was previously required due to contractual bindings between apple and phone providers that itouch users had to pay (those were the only ones that required it and even those only if they were none devs as Gold Masters of new os always upgraded for free)
And yupp, mobile gamers are casuals, they want easy stuff that just works, is engaging yet usable in short sessions.
as for being up to date on the os though: the only ones that aren't are people you can commonly ignore anyway cause those are the userst hat never fire up itunes. cause if they did, itunes would point out the upgrade very visible.
#15
BTW, I only have iPod Touches, and I wasn't aware that the iPhone OS upgrade is free.
06/07/2010 (11:36 pm)
Thanks for the info, as all of that stuff is very interesting. It will be interesting to see if the newer A4s will contain the newer GPUs. I really hope so, and if they do then the new iPhone should be a very powerful platform. Given the new screen resolution, I expect them to upgrade the GPU also. But, when you think about what is inside such a small device, it's almost mind blowing. It's a more powerful platform compared to what we had inside PCs only 10 or yrs ago.BTW, I only have iPod Touches, and I wasn't aware that the iPhone OS upgrade is free.
#16
06/08/2010 (10:17 am)
It isn't. It will be starting with iOS 4. But the current update is $5, so it's cheap to upgrade any devices still stuck at 2.x.
Employee Michael Perry
ZombieShortbus
I'm not sure I'm a fan of allowing custom resolutions, but it may be something to consider if Apple continues the trend of creating new resolutions with each device every 6 months. The first release after iOS4 will most likely see the third resolution as a hard-coded option while we work on a more elegant solution. Of course, with access to the source you would not have to wait on us.