This patch series ensures that meta-ops (such as glClear or glGenerateMipmapEXT) function properly when transform feedback or rasterizer discard is enabled.
Most of the code changes necessary to make this work are in core mesa: patches 1/5 and 5/5 ensure that meta ops properly pause transform feedback and disable rasterizer discard (and restore the state properly when the meta op is over). Patch 2/5 ensures that PauseTransformFeedback interacts properly with BeginTransformFeedback and EndTransformFeedback (so that there is no danger of transform feedback being in a paused state after a call to BeginTransformFeedback). Patch 3/5 ensures that that while transform feedback is paused, it's possible to switch programs and do drawing that isn't compatible with the transform feedback mode. Patch 4/5 implements transform feedback pause/resume functionality in the i965 driver. We don't expose this functionality to the user yet, but we need it for meta ops to work correctly. [PATCH 1/5] mesa: Save and restore GL_RASTERIZER_DISCARD state during meta ops. [PATCH 2/5] mesa: Ensure that Paused is reset to false on EndTransformFeedback. [PATCH 3/5] mesa: Disable certain error checks when transform feedback is paused [PATCH 4/5] i965 gen6: Implement transform feedback pause/resume functionality. [PATCH 5/5] mesa: Pause transform feedback during meta ops. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev