[webkit-dev] WebKit and Khronos Group

Maciej Stachowiak mjs at apple.com
Sat Aug 8 23:38:57 PDT 2009

On Aug 8, 2009, at 11:14 PM, Harry Underwood wrote:

> So what you're also saying is that the combination of CSS 3D  
> Transforms in Animations with SVG (resulting, I'm assuming, in SVG- 
> transformed animation through CSS styling) does not translate or  
> correlate to what either WebGL or O3D are meant to do, even though  
> O3D and SVG are both retained mode APIs?
> And you're also saying that it isn't the intention of WebKit's  
> implementation (or Apple's Working Draft) of SVG Transforms (as per http://www.w3.org/TR/SVG-Transforms/ 
>  ) to allow for the construction and styling of full scenes and  
> models like those in O3D? The draft has a combination of CSS  
> transitions, CSS Animations and CSS 3D to plug into SVG, so it would  
> seem like any composition using SVG Transforms could accomplish  
> mostly with CSS what O3D accomplishes with JavaScript (unless I'm  
> not reading it correctly).

SVG with transforms, even 3D transforms, is not capable of expressing  
a full 3D scene graph.

O3D, as a retained-mode API, could be an interesting complement to  
WebGL. Opera has also demonstrated an experimental retained-mode 3D  
API in the past, and there is of course experience with VRML and X3D.

3D transforms are a very different idea from either WebGL or O3D. The  
focus for 3D transforms is on putting arbitrary Web content in 3D  
space, maintaining full interaction behavior. (It may be possible to  
make a fully 3D technology that can mix arbitrary Web content with  
arbitrary 3D models and shaders and such, but probably a bigger  
challenge than anything that anyone has done so far.)

To summarize (as best I understand it):

SVG: retained mode, completely 2D
CSS 3D Transforms: retained mode, manipulates flat pieces of content  
in 3D space (some call this "2.5D"), mixes with arbitrary Web content
WebGL: immediate mode, fully general 3D, lives in a box (no free  
mixing with web content)
O3D: retained mode, fully general 3D, lives in a box (no free mixing  
with web content)


> Harry
> On Sat, Aug 8, 2009 at 10:02 PM, Jeremy Orlow <jorlow at chromium.org>  
> wrote:
> On Sat, Aug 8, 2009 at 2:02 PM, Maciej Stachowiak <mjs at apple.com>  
> wrote:
> On Aug 8, 2009, at 11:39 AM, Harry Underwood wrote:
>> Thanks for the link. Didn't even know that WebGL is being  
>> considered by WebKit.
> What Oliver showed you is patches to pretty much fully implement it,  
> done by an Apple employee. So we're doing more than considering it.  
> I expect there will be more to announce when the patches land.
>> But another question, if you don't mind. Is O3D considered as a  
>> technical competitor or conflict with Apple's CSS and SVG  
>> extensions, or should it be considered as such?
> We do have some extensions to do 3D transforms with CSS, creating  
> "2.5D" visuals with flat CSS boxes manipulated in 3D, and fully  
> integrated with the page content. For example, you can use it to  
> apply 3D effects to a navigation menu or a video. O3D is much more  
> about creating full 3D models and scenes, without tight integration  
> with the Web content. In that respect, O3D is more of a competitor  
> for WebGL than 3D transforms/transitions.
> I'm not personally involved in the WebGL or O3D efforts, but I can  
> speak to some of this.
> I agree that O3D and WebGL are more similar to each other than the  
> CSS 3D transforms.  Both are fairly low level, though they take  
> fairly different approaches to rendering.  O3D is a retained mode  
> API (somewhat like SVG) whereas WebGL is an immediate mode API (much  
> like Canvas).  In other words, for O3D, you use JavaScript to build  
> up a scene and transform it between frames.  In WebGL you use  
> JavaScript to explicitly render each frame.  The latter gives you  
> more control but is more limited by the speed of JavaScript and the  
> WebGL bindings.  I guess the point I'm trying to make here is that  
> all three technologies are actually complementary to each other.
> Incidentally, it's my understanding that Google showed off a  
> prototype version of Chrome running both O3D and WebGL at some  
> conference last week.  It's pretty cool how fast things are moving  
> with respect to 3D on the web.  :-)
> Jeremy
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20090808/9b871ffe/attachment.html>

More information about the webkit-dev mailing list