Mobile developers who want to migrate their applications from native platforms to the Web have another tool at their disposal: WebGL, a cross-platform framework that can be used to display sophisticated 3D graphics and applications in a mobile phone browser.
WebGL made its way onto smartphones late last year when Sony Ericsson introduced it as part of a software upgrade for its 2011 Xperia phones. By doing this, Sony Ericsson became the first manufacturer to support WebGL in the Android Web browser. The company is encouraging developers to get started working with the technology.
"One of the points for launching this early is that we would like to get it out for application developers so they can start building WebGL applications and tailoring them for mobile," said Anders Isberg, master engineer for research at Sony Ericsson.
Qualcomm is also promoting WebGL. Its Snapdragon processor and Adreno GPU are used in the Sony Ericsson Xperia Play, among other Xperia models, and the two companies collaborated on the Xperia WebGL implementation.
Sony Ericsson introduced WebGL as part of a software upgrade for its 2011 Xperia phones.
"It's only a matter of time before other implementations of WebGL come to market," said Sy Choudhury, director of product management at Qualcomm. "We're going out to developers that use Web technologies and telling them to start using WebGL already."
WebGL was defined and standardized by the Khronos Group, an industry consortium in which Qualcomm is a leading member. The organization has released WebGL as open-source technology that is available on a royalty-free basis.
Mozilla is creating support for WebGL in Firefox for Android. Mark Finkle, mobile front-end lead at Mozilla, said his team is "focused on making our WebGL implementation fast, capitalizing on the hardware acceleration built into many mobile devices."
Finkle said Mozilla is still optimizing its implementation but that "some of the more basic WebGL experiments can be run in Firefox using a Nexus One or Galaxy Nexus right now."
The obvious benefit of the technology is the portability it brings to 3D apps. Because WebGL is Web-based, developers do not have to tie their work to specific native environments and they can create cross-platform applications. It is also convenient for consumers because the applications can be used via the browser without installing plug-ins or any special software on a device. Mobile operators should also benefit because it will enable them to offer a diverse array of high-performance applications across their handset portfolios and lessen their dependencies on individual manufacturers or operating system vendors.
Essentially, WebGL allows Web apps to display content previously only available in iOS, Android or other native implementations.
"Suddenly, a whole new class of applications that people will pay more for, like games, will become viable for Web developers," said Nicholas Allot, founder and director of NquiringMinds. Allot was formerly the CTO of the Open Mobile Terminal Platform and the interim CTO for the Wholesale Application Community.
While games represent an obvious use case for WebGL, Allot asserts that it will also be used to make routine functions in a smartphone user interface much more appealing. He believes developers and operators will want the technology to create special effects for icons and animations used for contact lists, playlists and other UI features.
Qualcomm's Sy Choudhury sees games as an obvious fit for WebGL.
Qualcomm's Choudhury is touting two other motivations for using WebGL. One motivation is to move games from Adobe Flash to the mobile browser now that Adobe has said it will discontinue pushing Flash for the mobile market. Another is that WebGL gives retailers more interactive and compelling ways to display retail merchandise on mobile phones. An automobile manufacturer, for example, could use WebGL to display new cars, allowing a mobile device user to see a car in 3D and rotate the view just as a user would from his or her desktop computer.
Adopting the technology
Mark Beccue, senior analyst for mobile services at ABI Research, believes online retailing is a meaningful use case for WebGL and quite possibly a better one than 3D gaming.
"I view 3D in general as gimmicky," he said. "We've been dealing with this since the fifties. It's really other types of features and graphics that will be helpful."
Qualcomm's Choudhury said his team had some concerns initially that WebGL-powered apps might not perform as well as native apps, but now they believe the technology is up to the task.
He said his team ported Neocore, an Android application, to WebGL and benchmarked its performance against its native counterpart. The WebGL version operated at fewer frames per second than the native version, he said, but the difference would not be noticeable to an average viewer.
"There is a performance delta," Choudhury said. "We expected it. But, if you're not a hard-core enthusiast or engineer, you wouldn't know it."
While WebGL backers are urging developers to adopt the technology, it is not for everyone. As a low-level API, the technical threshold for working with it is high. Only top-tier developers will be able to handle it, Allott cautioned.
The technology and its implementations will also need some time to mature before WebGL has a real impact.
"It will take a couple iterations and 18 months or a couple years before it gets really interesting," he said.