Transform feedback: eliminate test dependency on tessellation order.
The transform feedback tests interleaved.c and position.c were assuming that a GL_QUAD whose vertices are ABCD is tessellated into triangle ABD followed by triangle BCD. This is not a reliable assumption--according to the EXT_transform_feedback spec, "the order of tessellation within a primitive is undefined". This was causing these tests to fail on the nVidia proprietary Linux driver, which tessellates quad ABCD as ABC followed by ACD. This patch chnges interleaved.c and position.c so that they specify triangles explicitly using glDrawElements(GL_TRIANGLES). The expected output is the same, but the test behavior no longer depends on how the driver tessellates quads. Fixes bogus failures on nVidia: - interleaved-attribs - position-readback-bufferbase - position-readback-bufferbase-discard - position-readback-bufferrange - position-readback-bufferrange-discard - position-render-bufferrange - position-render-bufferrange-discard Acked-by: Marek Olšák <email@example.com>