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

Re: [Public WebGL] Re: maximum length of identifiers in WebGL GLSL



Hi all,

This limit hasn't been specified in the current WebGL spec yet.  Is it
OK if we put 256 as max limit for now?

Mo

On Mon, Aug 2, 2010 at 3:37 PM, Kenneth Russell <kbr@google.com> wrote:
> On Mon, Aug 2, 2010 at 2:03 PM, Thatcher Ulrich <tu@tulrich.com> wrote:
>> 2 cents:
>>
>> * a fixed specified limit is good.
>>
>> * it should be a generous limit, since some devs will probably
>> machine-generate their shaders (think C++ name mangling etc).  On the
>> other hand, a huge limit won't be exercised much.  How about 256
>> chars?  That should encompass all human-written shaders, and then
>> some.  For machine-written shaders, it could be exceeded but it's
>> plenty of chars to generate a unique ID by hashing down a very long
>> id.
>
> It seems reasonable to specify a maximum identifier length. The only
> issue would be if some drivers do not even support the length we
> decide to specify.
>
> I was also going to suggest a 256 character maximum to better handle
> autogenerated shaders. We could spec that, implement it in the shader
> validator and test on several drivers to see whether it appears to be
> widely supportable.
>
> -Ken
>
>> -T
>>
>> On Mon, Aug 2, 2010 at 4:39 PM, Gregg Tavares (wrk) <gman@google.com> wrote:
>>> ping.
>>> Anyone have an opinion on this?
>>> There are 2 issues.
>>> Issue #1: It's possible a GL driver could be exploited by passing it giant
>>> identifiers.  Examples.
>>> ctx.bindAttribLocation(program, 4MegIdentifier, location);
>>> ctx.shaderSource(shader, shaderWith4MegIdentifiers, ...);
>>> Issue #2: Having a Min/Max identifier size of WebGL means programs will be
>>> more likely to work across platforms.
>>> Right now one platform might have a 64 character limit, another a 128
>>> character limit. If you're developing on the 128 character limit system you
>>> won't know your WebGL program is not going to work on some other system.  If
>>> instead the spec says it must support 128 characters to be WebGL conformance
>>> than an system who's OpenGL driver does not support 128 character will
>>> either need a new driver or the WebGL implementation will need to alias the
>>> ids. In either case WebGL becomes more compatible across system.
>>> Note that the GLSL translator everyone is currently using already has a 128
>>> character limit but it would be nice if that limit (or some limit) was
>>> formalized in the spec.
>>>
>>>
>>>
>>> On Thu, Jul 29, 2010 at 3:11 PM, Gregg Tavares (wrk) <gman@google.com>
>>> wrote:
>>>>
>>>> Do we want to specify a maximum identifier length for WebGL GLSL?
>>>> I didn't see one in the GLSL spec.  I was going to write a test with
>>>> really long identifiers (4meg) to see if I could find some drivers that had
>>>> problems with them but it might be better to just require WebGL to enforce
>>>> some maximum length.  64 chars? 128 chars? 256 chars which will make shaders
>>>> less likely to fail on some drivers.
>>>> Thoughts?
>>>
>>
>> -----------------------------------------------------------
>> 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:
>>
>>
>
> -----------------------------------------------------------
> 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:
>
>

-----------------------------------------------------------
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: