[Piglit] [WIP] Some ARB_transform_feedback3 tests

Topi Pohjolainen topi.pohjolainen at intel.com
Mon Sep 16 07:54:41 PDT 2013

I started drafting tests for the new transform feedback mechanisms.
So far I have exercised the use of interleaved and separate modes
together (previously only one of the modes could be used at a time).
I first wrote a test using fixed set of varyings and two buffers.
Then I generalized it for more buffers asking the driver for limits.
Both of course are not needed and I can merge them into a setup that
people find useful.
The last of the three types of test also uses multiple buffers but
also multiple vertex streams - one per buffer and all originating
from the same geometry shader invocation.

These tests pass on 4.3.0 NVIDIA 319.32 binary driver.

Any feedback is more than welcome. For example, is it better having
the tests simpler and using fixed amount of streams, buffers and

I had in mind playing with instanced shaders next. Once I have tests
for all the new functionality I thought looking at the corner and
error cases - I have a feeling there are going to be quite a few
such tests.

Topi Pohjolainen (4):
  util: buffer object probe
  tests/spec: ARB_transform_feedback3 interleaved in two buffers
  tests/spec: ARB_transform_feedback3 interleaved in separate buffers
  tests/spec: ARB_transform_feedback3 interleaved in multiple streams

 tests/all.tests                                    |   6 +
 tests/spec/CMakeLists.txt                          |   1 +
 .../spec/arb_transform_feedback3/CMakeLists.gl.txt |  15 +
 tests/spec/arb_transform_feedback3/CMakeLists.txt  |   1 +
 .../ext_interleaved_single_gs_many_streams.c       | 290 ++++++++++++++++++
 .../ext_interleaved_single_stream_many_buffers.c   | 334 +++++++++++++++++++++
 .../ext_interleaved_two_bufs.c                     | 223 ++++++++++++++
 tests/spec/arb_transform_feedback3/xfb3_common.h   |  48 +++
 tests/spec/ext_transform_feedback/separate.c       |  30 +-
 tests/util/piglit-util-gl-common.h                 |   4 +
 tests/util/piglit-util-gl.c                        |  24 ++
 11 files changed, 954 insertions(+), 22 deletions(-)
 create mode 100644 tests/spec/arb_transform_feedback3/CMakeLists.gl.txt
 create mode 100644 tests/spec/arb_transform_feedback3/CMakeLists.txt
 create mode 100644 tests/spec/arb_transform_feedback3/ext_interleaved_single_gs_many_streams.c
 create mode 100644 tests/spec/arb_transform_feedback3/ext_interleaved_single_stream_many_buffers.c
 create mode 100644 tests/spec/arb_transform_feedback3/ext_interleaved_two_bufs.c
 create mode 100644 tests/spec/arb_transform_feedback3/xfb3_common.h


More information about the Piglit mailing list