W3C home > Mailing lists > Public > public-fx@w3.org > October to December 2011

Re: [css-shaders] GLSL implementation defined limits

From: Vincent Hardy <vhardy@adobe.com>
Date: Thu, 10 Nov 2011 18:35:02 -0800
To: "Gregg Tavares (wrk)" <gman@google.com>
CC: "public-fx@w3.org" <public-fx@w3.org>
Message-ID: <36F6E0F2-200E-4B6F-BBA3-25D43838D742@adobe.com>
Hi Gregg,

On Nov 10, 2011, at 4:20 PM, Gregg Tavares (wrk) wrote:

Up until this point, AFAIK, CSS you either have a feature (like 3D css) or you don't but if you do have the feature then for the most part there aren't too many situations where you'll run into serious limits.

In other words, while you have to worry that whether or not gradients exist, if they do exist you can generally count on them working for all reasonable inputs.

But that's not true with CSS shaders.  It will be very easy to create CSS shaders that work on some hardware but not on others either by making them too long or by exceeding other limits of the user's GPU.

WebGL leaves this up to the dev to deal with but it's a programatic API. You can check that it failed at runtime.

CSS is generally declare and forget.

Should it be that if any CSS shader on a page does not compile that all CSS shaders on the page should be ignored? That would at least mean that you don't have some elements displaced and others not. You either get everything you intended or you get your fallback, no CSSshader layout.

Of course that's problematic since CSS shaders can be changed and/or applied on the fly

Maybe specifying some maximum limits or min spec hardware or something...?


I think you bring up several issues.

- Incorrect shaders. I think this should be handled like incorrect CSS. If the shader does not compile, it behaves as if no shader is specified. WIth the WebGL restrictions on shaders, there is a base interoperability so I think the definition is tight enough that shaders would be compatible on all implementations. The proposal actually has some wording about incorrect shaders, see https://dvcs.w3.org/hg/FXTF/raw-file/tip/custom/index.html#feCustom.

- Hw limitations. There may be wide enough variations between hw that makes a shaders perform ok on one platform and not fast enough on another. I think this is tricky, and if the content author wanted to do something different based on that knowledge, we would need to have a kind of 'hw capabilties' media query. I understand the concern and need, I am not clear on how we would go about classifying hardware capabilities. Do you have a suggestion?

Kind regards,
Vincent
Received on Friday, 11 November 2011 02:35:30 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 11 November 2011 02:35:32 GMT