-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Brian Paul wrote:

> This looks pretty good.  Much of the patch just replaces "ctx->Array." 
> with "ctx->Array.ArrayObj->".

That accounts for the bulk of it outside arrayobj.c.

> Go ahead and check this in if you want.  Unfortunately, I recently 
> made some small changes to bufferobj.c that will probably cause the 
> patch to fail for that file.

I think I'm going to wait a bit.  I also suspect that my handling of the
CVA lock range isn't correct.  The spec doesn't mention any interaction
with EXT_cva, so I left the CVA lock range as global (e.g., not per
vertex array object) state.  However, I just noticed some wording in the
spec that causes me to question that assumption.

The third paragraph added to chapter 6 says, "A vertex array object
comprises vertex array pointers ... and the range of static data for
each array."  It's not clear to me if "range of static data" refers to
CVA or to the APPLE_vertex_array_range.  Now that I think about it some
more, the later seems more likely.  Hmm...

> 1. You may want to add a lookup_arrayobj() function like I've 
> implemented in other places to wrap the _mesa_HashLookup() and 
> casting.  It makes things a big neater.

I saw your commit of lookup_bufferobj today.  That sounds like a really
good idea.

> 2. Perhaps rename 'NullArrayObj' to 'DefaultArrayObj'.  I used "Null" 
> in bufferobj.c since there isn't a user-visible buffer object named 
> zero.  But I use "Default" for texture objects and vertex/fragment 
> programs since there is a 0th object of those types.

Okay.

> 3. It looks like there's a little left-over buffer-object cut&paste 
> language in arrayobj.c  (s/buffer/array/ basically)

Gak.  I thought I caught all of that.  I'll take another look.  Thanks.

> I can take a closer look at the Push/PopAttrib details someday.

It should be easy enough to resolve with by running a couple test cases
on an OS X system.  Since that's the only other implemenation, I think
we're good as long as we match.  I hope to be able to do that this week.

This is the problem we have sometimes with vendor extensions.  Typically
the same person writes the spec and writes the code to implement it.
Since the code author "knows" what the spec author means, some subtle
details get missed in the spec. :(
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)

iD8DBQFEhGzCX1gOwKyEAw8RAkyVAJ0awnpClkmrO61cmUyzPXpB6iOI8ACfQP19
HB2FGlYlCz7LlFdP4F/7iMM=
=zRG6
-----END PGP SIGNATURE-----


_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to