O3D – Google's 3D JavaScript API

I've been dying to talk about this since last summer when I joined the trusted testers programme, but the public release has finally arrived. Google has released an Open Source JavaScript API for creating interactive 3D graphics in the browser called O3D. It is currently a browser plugin for Internet Explorer, Firefox, Safari, and Chrome that works on Windows, Mac OS X, and Linux – but Google would ultimately like to see native support in browsers.
 
Although Google have been working on this project for two years, they're billing this as an early release as "part of a conversation with the broader developer community about establishing an open web standard for 3D graphics". With reference to Khronos' Initiative to Create Open Royalty Free Standard for Accelerated 3D on the WebMatt Papakipos (Engineering Director at Google) has previously said "with more and more content moving to the web and JavaScript getting faster every day, the time is right to create an open, general purpose API for accelerated 3D graphics on the web. Google looks forward to offering its expertise in graphics and web development to this discussion".
 
CNET article on O3D also quotes Papakipos. 'Google believes that it's possible that multiple 3D interfaces will be supported in browsers of the future. "Ultimately, there's going to be at least two," Papakipos said, pointing out that 2D graphics in the browser has two technologies at present, SVG and Canvas'. Having personally discussed X3D with Matt Papakipos, I have high hopes that he may be referring to X3D here, or perhaps a derivative of X3D. When I discussed X3D with members of the O3D team (known internally by a different name) last summer, they said they didn't know a great deal about X3D at the time, but they seemed to have some reservations about parts of the standard – apparently enough to warrant taking their own approach to the problem.
 
I am encouraging Web3D Consortium members to engage in this discussion. As Google has recently become a browser vendor and a member of the Khronos group, I would also be interested to hear the consortium's views on Google's recent release. Their new API is yet another example of an imperative approach in contrast with X3D's declarative approach.
 
Please note that I am not currently an employee of Google, I was only an intern there last summer, any opinions expressed are my own.