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

Re: [Public WebGL] consult on the webgl conformance test case



On Thu, Jan 5, 2012 at 12:32 AM, Mark Callow <callow_mark@hicorp.co.jp> wrote:
> On 05/01/2012 17:00, Zhao, Jian J wrote:
>
> OK. Maybe I misunderstanding the ANGLE before.
>
> So do you mean this is an issue in browser side(chromium or webkit) instead
> of our 3D driver mesa’s issue, is it?  And in this case it still may be
> related to the spec or the test case.
>
> Thanks.
>
> The GLSL {,ES} specifications are not clear about how many nesting levels
> must be supported nor the maximum lengths of identifiers and the OpenGL ES
> conformance test does not test these things very thoroughly. This has led to
> inconsistencies among implementations. These in turn caused the WebGL WG to
> introduce restrictions that should not be a challenge for any OpenGL {,ES}
> implementation in order to create consistency.
>
> The mesa 3D driver should ensure it can cope with the minimums required by
> the WebGL spec., in this case a nesting level of 4. But it is free to allow
> deeper nesting consistent with the GLSL specification. Only WebGL
> implementations are required to fail compilation of anything with a nesting
> level > 4.

Correct.

To reiterate, the WebGL shader restrictions are implemented in ANGLE's
shader translator. This sub-component of the ANGLE project is used in
Chromium and Firefox (and possibly other browsers) on all platforms,
not just Windows. All incoming WebGL shaders are processed by this
translator to enforce WebGL restrictions before giving the shader to
the system's native GLSL or HLSL compiler.

Jian, as you pointed out in your off-list email to me, there is in
fact a difference between the spec text and the conformance tests
struct-nesting-under-maximum.html and
struct-nesting-exceeds-maximum.html . The ANGLE shader translator
should be allowing one more level of nesting than it currently does.
I'll file a bug and fix the tests. Thanks for pointing out this issue.

-Ken

-----------------------------------------------------------
You are currently subscribed to public_webgl@khronos.org.
To unsubscribe, send an email to majordomo@khronos.org with
the following command in the body of your email:
unsubscribe public_webgl
-----------------------------------------------------------