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

Paul Berry stereotype441 at gmail.com
Sat Dec 15 22:09:19 PST 2012

Here's an update on my patch series from yesterday.  I've made the
following changes:

- In patch 2, I had accidentaly included some C++-style variable
  declarations.  These don't work with MSVC, so I changed them to
  C-style variable declarations.

- Patch 5 required a complete rewrite--it turned out that we weren't
  properly handling the corner case where the size of a buffer is
  changed after it is bound for transform feedback.  (This is the
  reason the previous patch series failed with the GLES3 conformance
  test transform_feedback2_pause_resume.test).  I'll be following up
  with some piglit tests that test these corner cases more directly.

- Per Ian's recommendation, I've consolidated the logic for
  determining whether transform feedback is active and not paused into
  its own function (patch 6).

With these changes, all of the GLES3 transform feedback conformance
tests now pass.

[PATCH v2 1/6] mesa: Change args to vbo_count_tessellated_primitives.
[PATCH v2 2/6] mesa: refactor _mesa_compute_max_transform_feedback_vertices from i965.
[PATCH v2 3/6] mesa/gles3: Generate error on DrawElements* calls if transform feedback active.
[PATCH v2 4/6] mesa/gles3: Generate error on draw call if transform feedback would overflow.
[PATCH v2 5/6] mesa: Fix corner cases of BindBufferBase with transform feedback.
[PATCH v2 6/6] mesa: Make a function is_transform_feedback_active_and_unpaused.

More information about the mesa-dev mailing list