Google trying anew for a 3D Web

Two related projects from Mozilla and Google, each with the similar goal of bringing hardware-accelerated 3D graphics to the Web, appear to be joining forces after a change in Google tactics.

The two projects emerged at nearly the same time in 2009: the O3D browser plug-in from Google and the proposed WebGL standard from Mozilla and the Khronos Group, which standardizes the OpenGL graphics interface on which WebGL is based. O3D is a higher-level technology, whereas WebGL is more concerned with the nuts and bolts of 3D graphics.

In recent months, though, O3D has become dormant. But it's not fading away, exactly: Google is trying to breathe new life into the project by rebuilding it on a WebGL foundation.

What are the implications? For Mozilla and Google, it means more cooperation rather than competition for attention for the projects. By working together rather than in isolation, each project reinforces the other.



That, in turn, could help bring the promise of 3D graphics on the Web closer to practical reality--something browsers are more likely to support and programmers are more likely to use in situations such as games or more sophisticated applications. Don't forget that the Google Apps suite of online services and the Chrome OS browser-based operating system give Google a powerful incentive to make the Web as powerful a foundation for applications as it can.

There are uncertainties, though. One big one is performance, a central matter for 3D gaming. Another is just how much of the original O3D feature set will carry forward to the new approach.

Evidence
Google wouldn't comment specifically for this story. "We are strong supporters of 3D on the Web and are working hard to bring this functionality to browsers through technologies like O3D and WebGL. However, we have nothing new to announce at this time," said spokesman Eitan Bencuya.

But the evidence for O3D's rebirth is strong.

First, the issue tracker for the open-source O3D project shows signs of neglect. Of the 217 reported bugs and suggestions, few filed in the last six months show much sign of being addressed: four were fixed, one installation problem reported in November was worked on in December, and most of the remaining issues are unclaimed and still marked as "new."

Second, the mailing list is dormant. Even when one writer ventured to ask, "Is O3D still under development?" nobody from Google offered any reassurance it was--even though two respondents said they were working on O3D-based projects.

Third, although there's little recent activity with Google's move to build O3D support into Chrome, there's one very significant project: an effort to "write JavaScript classes which act like the O3D classes but call WebGL under the hood."

Or, in other words, to reconstruct O3D out of WebGL ingredients.

Other evidence is circumstantial: Google had words of encouragement for WebGL. It's building WebGL into Chrome, with the latest developer release of Google's browser including support that doesn't pose problems with Chrome's sandbox security mechanism.

Meanwhile, Google is working on other fronts, too. One of the shortcomings of WebGL is that it uses OpenGL technology. That's commonplace for 3D graphics on Mac OS X and Linux, but when it comes to Windows, Microsoft's Direct3D is dominant.

Thus the existence of Google's ANGLE project, short for Almost Native Graphics Layer Engine. ANGLE hands off WebGL graphics commands from software so they can be handled by a Direct3D a layer below.

The last data point: Google itself has called the WebGL-based O3D idea "interesting." Matthew Papakipos, a Google engineering director, said in December, "There are potentially some performance issues, but we're working to resolve those by making some changes to V8," the Chrome browser's JavaScript engine.

Bumps on the road?

One question about the new approach is performance.

Gregg Tavares, a Google programmer behind O3D, raised that issue in 2009 during a mailing list discussion.

"WebGL, being 100 percent dependent on JavaScript to do an application's scene graph [a catalog of 3D objects], is going to have serious problems drawing more than a few pieces of geometry at 60hz except in very special cases or on very fast machines," Tavares said, listing other performance concerns as well.

O3D was written in the C++ programming language and is compiled to run fast on computers. To use it, programmers write in JavaScript, then call on the O3D interface to perform various functions.

Using WebGL means the tasks O3D handles are written in JavaScript, too. Though JavaScript is getting a lot faster, it's generally not what many programmers would call fast compared to compiled software.

Another question is features. For those who've written software using O3D, it's not clear how many of its interfaces will be available.

"Not all of the original O3D functionality is possible (practical) to implement in this way, but the goal is to implement enough of it that third-party as well as Google O3D developers have an easy migration path to WebGL," the Chrome feature description stated.

Later, the programmer involved added, "I've made a lot of progress on this. Some of the old O3D demos work using the new classes with trivial modification to the demo code."

Presently, the JavaScript-based version of O3D is slated to ship with Chrome 5, but some features recently have slipped to Chrome 6, so that schedule shouldn't be considered carved in stone.

A more powerful Web

What can be counted on for the foreseeable future, though, is Google's strong desire to make the Web more powerful by enabling Web apps to tap into local processing power that PCs, Netbooks, and now even mobile phones are getting. Google's overall argument is that people who spend more time online will use its search service more--and therefore use its search ads more.

And 3D technology built into the Web could make Google Maps more immersive--not so much a series of snapshots but instead like a flight simulator or first-person shooter--a smoothly changing perspective that lets a virtual perspective move up and down terrain contours and among 3D models of buildings wrapped with real-world imagersy. Google has said its trying to bring its Google Earth experience to Google Maps, and a plug-in such as O3D is one way to accomplish the task.

But Google also has another big business, Google Apps, the company's next billion-dollar business, according to Chief Executive Eric Schmidt. Notwithstanding Google's protestations that it doesn't want to re-create the full feature set of Microsoft Office, there's no question the company would like to be able to do more with its online spreadsheet, word processor, presentation, e-mail, and calendar software than it can today. Google's acquisition of online photo editor Picnik indicates it's interested in broadening the scope of its applications, too.

Glitzy 3D interfaces may be a low priority for online word processing. But it's one element of what it takes to make a polished user interface for the full range of applications on a computer today and on the cloud tomorrow.

0 Response to "Google trying anew for a 3D Web"

Post a Comment

Leave Your Thoughts & We Will Discuss Together

powered by Blogger | WordPress by Newwpthemes | Converted by BloggerTheme