Wednesday, June 10, 2009

iPhone 3G S supports OpenGL ES 2.0, but 3G only supports 1.1 -- will the App Store splinter?

Source: http://www.engadget.com/2009/06/10/iphone-3g-s-supports-opengl-es-2-0-but-3g-only-supports-1-1/


When we were breaking down the meaty differences between the old-school 3G and the 3G S yesterday, we made an assumption about support for OpenGL ES 2.0 3D graphics APIs in the original iPhone 3G based on the fact that it had been available in the iPhone OS 3.0 SDK for several betas. Turns out, though, that the graphics processor in the 3G S -- the PowerVR SGX -- supports hardware acceleration of both OpenGL ES 1.1 and 2.0 while the more pedestrian PowerVR MBX found in the iPhone 3G supports 1.1 alone.

What does this mean to you? OpenGL ES is the lightweight version of OpenGL, a powerful library of real-time 3D rendering APIs; many modern phones and other handheld devices support the older 1.1 specification, but 2.0 is less common -- it kicks things up a notch by supporting more complex textures and shading operations, which basically means games written to support it look more badass. Here's the problem, though: because OpenGL ES 1.1 and 2.0 are completely incompatible with each other, apps need to be written to support both if they're going to be maximally compatible. A 2.0-only app can't simply run on a 1.1-only device and not look as good -- it won't work at all.

Here's where it gets interesting. The App Store has already splintered a bit with certain applications being unavailable to iPod Touch users (dialers, for example), but language in Apple's iPhone SDK documentation leads us to believe that the company eventually intends to begin allowing it to splinter even among iPhone models, maybe as soon as the 3G S is released. That is, they'll allow apps that are only compatible with the 3G S because they're written to take advantage of OpenGL ES 2.0 and don't offer a 1.1 fallback:
"When de! signing your OpenGL ES application, the first question you must answer is whether your application will support OpenGL ES 1.1, OpenGL ES 2.0, or both... Your application should target OpenGL ES 1.1 if you want to support all iPhones and iPod touches."
Realistically, it was bound to happen; platform aside, hardware is always improving, and it's paralyzingly difficult to require that all apps be compatible with all of a platform's devices regardless of age -- particularly when it comes to gaming. We imagine this'll be an issue with apps taking advantage of the 3G S' other specific features like the magnetic compass and video recording support, too. Question is, what'll be that must-have game (or compass, we suppose) that spurs stubborn 3G owners into shelling out a few hundred bucks they didn't intend to?

Filed under: , ,

iPhone 3G S supports OpenGL ES 2.0, but 3G only supports 1.1 -- will the App Store splinter? originally appeared on Engadget on Wed, 10 Jun 2009 05:00:00 EST. Please see our terms for use of feeds.

Permalink | Email this | Comments