[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Public WebGL] Is section 6.3 still needed ? (was: New Rendering Pipeline ?)

On Aug 27, 2010, at 11:27 PM, Cedric Vivier wrote:

On Sat, Aug 28, 2010 at 13:59, Oliver Hunt <oliver@apple.com> wrote:
Compositing is a highly restricted use case, it is quite literally the act of drawing one texture on top of another, with no effects or anything. If there were compatibility problems doing something that simple then i don't think we'd have much in the way of consumer products that used 3d :D

Yes indeed, but let's forget about the compositing part actually ;-)

The interesting point is that the underlying GPU process (and the command buffer API) used is the same for both WebGL and NaCl 3D rendering.

Both WebGL and NaCl expose ES 2.0 functionality to user code (WebGL doing it with just a bit more restrictions and adaptations with regards to _javascript_).

Months ago we decided to add section 6.3 divergence to the WebGL specification because it was thought impossible to implement ES 2.0's framebuffer attachment semantics on top of OpenGL desktop and Direct3D... however it seems that a workaround has been found since ES 2.0 as exposed by NaCl is said to be able to support ES 2.0 semantics regardless of the underlying platform's 3D API.

This makes me wonder whether we might be able to remove 6.3, hence have one less divergence from ES 2.0, which is one of the goals of WebGL ("conforms closely to the ES 2.0 API") and helps porting.

The fact that they share a process is irrelevant -- the only reason that GPU stuff runs in a separate process is because historically graphics drivers have been buggy so it makes sense to isolate them from anything else, in much the same way (and for basically the same reasons) that browsers run plugins in a separate process now.

Given the model taken by NaCl I doubt that they are as concerned about compatibility as we need to be.