[Mesa-dev] [PATCH 0/5] GLES3 transform feedback fixes.

Paul Berry stereotype441 at gmail.com
Fri Dec 14 13:01:03 PST 2012

Here's a series of loosely-related fixes to transform feedback
behaviour for GLES3.

Patches 1-4 implement a difference between GLES3 and desktop GL: in
GLES3, transform feedback can only be used with DrawArrays and
DrawArraysInstanced, and it is supposed to generate an error if there
is not enough buffer space available to record transform feedback

Patch 5 fixes a bug that was present for both GLES3 and desktop GL:
querying GL_TRANSFORM_FEEDBACK_BUFFER_SIZE is supposed to return zero
if the buffer was bound using a call that didn't specify a size (such
as glBindBufferBase).

With these patches (and varying packing, which I landed on master this
morning), the i965 driver is able to pass all GLES3 transform feedback
tests except transform_feedback2_pause_resume.test.

[PATCH 1/5] mesa: Change args to vbo_count_tessellated_primitives.
[PATCH 2/5] mesa: refactor _mesa_compute_max_transform_feedback_vertices from i965.
[PATCH 3/5] mesa/gles3: Generate error on DrawElements* calls if transform feedback active.
[PATCH 4/5] mesa/gles3: Generate error on draw call if transform feedback would overflow.
[PATCH 5/5] mesa: Fix GL_TRANSFORM_FEEDBACK_BUFFER_SIZE query when glBindBufferBase used.

More information about the mesa-dev mailing list