NAME¶
glDrawTransformFeedbackStreamInstanced - render multiple instances of primitives
using a count derived from a specifed stream of a transform feedback object
C SPECIFICATION¶
void
glDrawTransformFeedbackStreamInstanced(GLenum mode,
GLuint id, GLuint stream,
GLsizei primcount);
PARAMETERS¶
mode
Specifies what kind of primitives to render.
Symbolic constants GL_POINTS, GL_LINE_STRIP,
GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY,
GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN,
GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY,
GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted.
id
Specifies the name of a transform feedback
object from which to retrieve a primitive count.
stream
Specifies the index of the transform feedback
stream from which to retrieve a primitive count.
primcount
Specifies the number of instances of the
geometry to render.
DESCRIPTION¶
glDrawTransformFeedbackStreamInstanced draws multiple copies of a range
of primitives of a type specified by
mode using a count retrieved from
the transform feedback stream specified by
stream of the transform
feedback object specified by
id. Calling
glDrawTransformFeedbackStreamInstanced is equivalent to calling
glDrawArraysInstanced() with
mode and
primcount as
specified,
first set to zero, and
count set to the number of
vertices captured on vertex stream
stream the last time transform
feedback was active on the transform feedback object named by
id.
Calling
glDrawTransformFeedbackInstanced() is equivalent to calling
glDrawTransformFeedbackStreamInstanced with
stream set to zero.
ERRORS¶
GL_INVALID_ENUM is generated if
mode is not an accepted value.
GL_INVALID_VALUE is generated if
id is not the name of a transform
feedback object.
GL_INVALID_VALUE is generated if
stream is greater than or equal
to the value of
GL_MAX_VERTEX_STREAMS.
GL_INVALID_OPERATION is generated if a non-zero buffer object name is
bound to an enabled array and the buffer object's data store is currently
mapped.
GL_INVALID_OPERATION is generated if a geometry shader is active and
mode is incompatible with the input primitive type of the geometry
shader in the currently installed program object.
GL_INVALID_OPERATION is generated if
mode is
GL_PATCHES and
no tessellation control shader is active.
GL_INVALID_OPERATION is generated if
glEndTransformFeedback() has
never been called while the transform feedback object named by
id was
bound.
SEE ALSO¶
glDrawArrays(),
glDrawArraysInstanced(),
glDrawElements(),
glDrawRangeElements(),
glDrawTransformFeedback(),
glDrawTransformFeedbackStream().
COPYRIGHT¶
Copyright © 2010-2011 Khronos Group. This material may be distributed
subject to the terms and conditions set forth in the Open Publication License,
v 1.0, 8 June 1999.
http://opencontent.org/openpub/.