W3C home > Mailing lists > Public > public-fx@w3.org > January to March 2011

Re: Thoughts on canvas compositing

From: Charles Pritchard <chuck@jumis.com>
Date: Mon, 17 Jan 2011 00:20:42 -0800
Message-Id: <F3067B33-A4F1-4A9D-966E-2616D40EE30D@jumis.com>
Cc: Simon Fraser <smfr@me.com>, Paul Bakaus <pbakaus@zynga.com>, "public-canvas-api@w3.org" <public-canvas-api@w3.org>, "public-fx@w3.org" <public-fx@w3.org>
To: "robert@ocallahan.org" <robert@ocallahan.org>




On Jan 16, 2011, at 1:55 PM, "Robert O'Callahan" <robert@ocallahan.org> wrote:

> On Mon, Jan 17, 2011 at 10:18 AM, Simon Fraser <smfr@me.com> wrote:
> That's not true of all user agents. For example, WebKit on Mac will use a fast, GPU-based path for compositing a WebGL canvas. It's
> 
> The same is true for Firefox 4 everywhere we have enabled usage of the GPU (currently Mac and Windows for drivers we trust). I believe it's also true for IE9. It's also true for 2D canvas on those browsers.
> 
> I really don't see the need for any new properties. I think the onus is on the browser developers to detect and implement compositing optimizations when they can.
> 
> I agree.

I'd like to point out that 2D rendering, of bezier curves, is tricky on most older gpus-- and is often rendered on CPU then sent to the gpu.

3D gaming and 2D shaded animations are two very different problem sets.

Yes, the latest and greatest cards have wonderful support/potential.

Most of the computers on the market don't have that same amazing potential. CSS transforms and opacity are the bare basics which can be easily accelerated in those environments. 

As the OP is from Zynga, I'd say, use the tricks that work with the widest audience.

2D on graphics cards, of the quality OP is looking for, is relatively new. And for complex scenes, using webgl shaders is where excitement is going to be, on supporting cards, and can be run efficiently on multicore systems that don't have a programmable pipeline.

-Charles
Received on Monday, 17 January 2011 08:21:23 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 17 January 2011 08:21:24 GMT