Hello all, just a few questions. I was reading a post on Ars Technica from earlier this week<http://arstechnica.com/open-source/news/2009/08/webgl-standard-to-bring-3d-web-without-browser-plugins.ars>concerning the Khronos Group's announcement of a partnership on WebGL development with Google, Mozilla and Opera. Weirdly, I didn't see Apple in that list, or WebKit for that matter. Is Apple and/or WebKit abstaining from WebGL because Google is promoting a seemingly-competing product, O3D, as opposed to your efforts with CSS 2D/3D Transforms and Animations? Or is it because WebGL, as announced by Khronos Group, simply doesn't yet take CSS (or SVG) into technical account for hardware accelerated 3D Web graphics? Harry
On 2009-08-08, at 11:25, Harry Underwood wrote:
Hello all, just a few questions.
I was reading a post on Ars Technica from earlier this week concerning the Khronos Group's announcement of a partnership on WebGL development with Google, Mozilla and Opera. Weirdly, I didn't see Apple in that list, or WebKit for that matter.
Is Apple and/or WebKit abstaining from WebGL because Google is promoting a seemingly-competing product, O3D, as opposed to your efforts with CSS 2D/3D Transforms and Animations? Or is it because WebGL, as announced by Khronos Group, simply doesn't yet take CSS (or SVG) into technical account for hardware accelerated 3D Web graphics?
<http://webkit.org/b/28018> Need to implement Canvas3d/WebGL for 3D rendering - Mark
Thanks for the link. Didn't even know that WebGL is being considered by WebKit. 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? Harry On Sat, Aug 8, 2009 at 2:29 PM, Mark Rowe <mrowe@apple.com> wrote:
On 2009-08-08, at 11:25, Harry Underwood wrote:
Hello all, just a few questions. I was reading a post on Ars Technica from earlier this week<http://arstechnica.com/open-source/news/2009/08/webgl-standard-to-bring-3d-web-without-browser-plugins.ars>concerning the Khronos Group's announcement of a partnership on WebGL development with Google, Mozilla and Opera. Weirdly, I didn't see Apple in that list, or WebKit for that matter. Is Apple and/or WebKit abstaining from WebGL because Google is promoting a seemingly-competing product, O3D, as opposed to your efforts with CSS 2D/3D Transforms and Animations? Or is it because WebGL, as announced by Khronos Group, simply doesn't yet take CSS (or SVG) into technical account for hardware accelerated 3D Web graphics?
<http://webkit.org/b/28018> Need to implement Canvas3d/WebGL for 3D rendering
- Mark
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. Regards, Maciej
Harry
On Sat, Aug 8, 2009 at 2:29 PM, Mark Rowe <mrowe@apple.com> wrote:
On 2009-08-08, at 11:25, Harry Underwood wrote:
Hello all, just a few questions.
I was reading a post on Ars Technica from earlier this week concerning the Khronos Group's announcement of a partnership on WebGL development with Google, Mozilla and Opera. Weirdly, I didn't see Apple in that list, or WebKit for that matter.
Is Apple and/or WebKit abstaining from WebGL because Google is promoting a seemingly-competing product, O3D, as opposed to your efforts with CSS 2D/3D Transforms and Animations? Or is it because WebGL, as announced by Khronos Group, simply doesn't yet take CSS (or SVG) into technical account for hardware accelerated 3D Web graphics?
<http://webkit.org/b/28018> Need to implement Canvas3d/WebGL for 3D rendering
- Mark
_______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
On Sat, Aug 8, 2009 at 2:02 PM, Maciej Stachowiak <mjs@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
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). Harry On Sat, Aug 8, 2009 at 10:02 PM, Jeremy Orlow <jorlow@chromium.org> wrote:
On Sat, Aug 8, 2009 at 2:02 PM, Maciej Stachowiak <mjs@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
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) Regards, Maciej
Harry
On Sat, Aug 8, 2009 at 10:02 PM, Jeremy Orlow <jorlow@chromium.org> wrote: On Sat, Aug 8, 2009 at 2:02 PM, Maciej Stachowiak <mjs@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@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
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).
As has been said before, O3D is much more related to WebGL than to CSS Effects or SVG. If you look at the O3D Beach Demo (http://www.youtube.com/watch?v=uofWfXOzX-g ) you can see that O3D (and WebGL) is used to render 3D textured and lit scenes. It has the upside of being very efficient at showing very high quality and high polygon count 3D objects, using the modern shading techniques available on most of today's graphics cards. But it has the downside that it does now really live in the same DOM as the rest of the page. So you could not, for instance, show an HTML page in the scene (not yet, anyway). And you can't use CSS to apply style, and things like that. CSS Effects can be used to make simple 3D object, like cubes, and even spheres if you REALLY worked at it. It has the upside of being fully integrated with the HTML DOM, but the downside that doing anything more complex than the simplest shape is really hard, and the "scene" is not lit or textured, or shaded in any way. So they really are two distinct capabilities. ----- ~Chris cmarrin@apple.com
Hi Jeremy, On Aug 8, 2009, at 7:02 PM, Jeremy Orlow wrote:
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.
Thanks, that's a much better explanation of the relationship between WebGL and O3D. I hope we get some version of retained-mode 3D on the standards track at some point. Regards, Maciej
On Aug 8, 2009, at 7:02 PM, Jeremy Orlow wrote:
On Sat, Aug 8, 2009 at 2:02 PM, Maciej Stachowiak <mjs@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. :-)
It was the OpenGL conference and they showed a working implementation of WebGL (with some unknown vintage of the current API) at the OpenGL BOF. It was well received. But they were also showing O3D on the exhibition floor. So they are apparently pursuing both approaches. As far as I know they are not attempting to move O3D through any standards body. So for now it is just a Google experiment. ----- ~Chris cmarrin@apple.com
participants (5)
-
Chris Marrin
-
Harry Underwood
-
Jeremy Orlow
-
Maciej Stachowiak
-
Mark Rowe