W3C home > Mailing lists > Public > whatwg@whatwg.org > October 2013

Re: [whatwg] Canvas in workers

From: Glenn Maynard <glenn@zewt.org>
Date: Thu, 24 Oct 2013 08:59:08 -0500
Message-ID: <CABirCh8Q0dxvcioQkrnmZoJXMxWyiTm2MLOEGLqXkCAqgsaLvA@mail.gmail.com>
To: Jeff Gilbert <jgilbert@mozilla.com>
Cc: Justin Novosad <junov@google.com>, WHAT Working Group <whatwg@whatwg.org>, Kyle Huey <me@kylehuey.com>, Kenneth Russell <kbr@google.com>, Robert O'Callahan <robert@ocallahan.org>
> ----- Original Message -----
> From: "Robert O'Callahan" <robert@ocallahan.org>
> We talked through this proposal with a lot of Mozilla people in a meeting
> and collectively decided that we don't care about the case of workers that
> commit multiple frames to a canvas without yielding --- at least for now.
> So we want to remove commit() and copy the main-thread semantics that a
> canvas frame is eligible for presentation whenever script is not running in
> the worker.

On Thu, Oct 24, 2013 at 7:25 AM, Jeff Gilbert <jgilbert@mozilla.com> wrote:

> This is not the current WebGL semantics:
>     WebGL presents its drawing buffer to the HTML page compositor
> immediately before a compositing operation[...]

(Can you please quote correctly?  Having one person top-quoting makes a
mess of the whole thread, and it looked like you were saying that the WebGL
spec language you were quoting was incorrect.)

The assumption WebGL is making here is that compositing is a synchronous
task in the event loop, which happens while no script is running.  That is,
the semantics Robert describes are the same as what the WebGL spec is
trying to say.  That's not necessarily how compositing actually works,
though, and that language also won't make sense with threaded rendering.
It might be better for WebGL to define this using the "global script
clean-up jobs" task that HTML now defines.
I'd recommend spinning off a separate thread if we want to go into this

Glenn Maynard
Received on Thursday, 24 October 2013 13:59:39 UTC

This archive was generated by hypermail 2.4.0 : Wednesday, 22 January 2020 17:00:12 UTC