[Public WebGL] gl.sizeInBytes
Vladimir Vukicevic
[email protected]
Mon Jan 11 12:31:34 PST 2010
On 1/11/2010 11:48 AM, Kenneth Russell wrote:
> On Mon, Jan 11, 2010 at 10:37 AM, Chris Marrin <[email protected]
> <mailto:[email protected]>> wrote:
>
>
> On Jan 10, 2010, at 11:44 PM, Patrick Baggett wrote:
>
> > It is hardly a matter of "does a GL implementation have 64-bit
> GL_FLOATs", but more of "the WebGL spec explicitly states the size
> of its types." -- the latter entirely shutting off the concept of
> "implementation dependent" sizes.
> >
> > Vlad's right, even if gl.sizeInBytes(GL_FLOAT) did return 8
> (double prec.) there would be no way to efficiently/portably
> buffer the data.
>
>
> So then maybe it would be better to replace these with constants
> (ctx.FLOAT_SIZE, ctx.INT_SIZE, ctx.UNSIGNED_SHORT_SIZE), etc.?
>
>
> I think we should leave sizeInBytes as a function rather than defining
> constants. On a hypothetical platform which defined GLfloat as a
> double, the WebGL implementation would be responsible for making
> WebGLFloatArray manage double-precision rather than single-precision
> floating point numbers.
Hmm.. I don't think it should do this, see below.
> As we consider proposing broader use of these array-like types, we
> will have to specify the exact size of the machine types they manage.
> However, the mapping between e.g. WebGLFloatArray to e.g. FloatArray
> vs. DoubleArray would need to be flexible.
We already have the exact size of the machine types specified for the
WebGL Arrays; I think that this needs to remain the case, because
otherwise we have the problem that people will just assume 4 bytes
anyway because it's currently the probably-100% case and the world
breaks if there is an 8-byte "GL_FLOAT" platform. Otherwise, people
have to use sizeInBytes constantly to get correct portable behaviour,
and we've tried pretty hard to avoid requirements like that (e.g
UniformIndex and friends)..
- Vlad
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://khronos.org/pipermail/public_webgl_khronos.org/attachments/20100111/96774ecb/attachment.html>
More information about the public_webgl
mailing list