Ian Romanick wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> I'm in the process of adding support for vertex shaders generating clip
> distances.  This is part of NV_vertex_program2 and GLSL 1.30.  The
> natural way to do that is to add 6 entries to the gl_vert_result enum:
> one for each clip plane.  However, doing so increases the number of
> vertex outputs from 31 to 37.  This won't fit in a GLbitfield, and an
> assertion is triggered during context creation.
> 
> My intention is to convert OutputsWritten from a GLbitfield to a
> uint64_t.  This will precipitate a giant pile of changes across the
> whole *...@ing tree.  Before I dive into this, is this the right way to
> do this?

Yeah, I knew we'd need larger bitfields there eventually.

I'd suggest defining a GLbitfield64 type (typedef of GLuint64) and 
using that everywhere.

Some "ULL" suffixes will probably be needed here and there (like for 
#define VERT_RESULT_CLIP_DIST0 (1ULL << 32)).  I guess that's a C99 
feature but I think we're already going down that road.

If/when someone complains that their system doesn't support 64-bit 
types we can consider work-arounds.

How does that sound?

I suggest doing this on a feature branch.

-Brian

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to