GLDRAWTRANSFORMFEEDB(3G)
π GLDRAWTRANSFORMFEEDB(3G) π
okay so this is the 3G manual page, bestie, and the header placeholder is literally [FIXME: manual]. We're doing this. π
πΈ NAME πΈ
glDrawTransformFeedbackStream β render primitives using a count derived from a specifed stream of a transform feedback object. yes, "specifed" is what the page says, we're preserving the lore. π«Ά
β¨ C SPECIFICATION β¨
void glDrawTransformFeedbackStream(GLenum mode, GLuint id,
GLuint stream);
π PARAMETERS π
modeβ tells the function what kind of primitives to render, bestie. These symbolic constants are accepted: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, andGL_PATCHES.idβ the name of a transform feedback object, and this is the object we pull a primitive count from. iconic little lookup moment β¨streamβ the index of the transform feedback stream we're pulling that primitive count from. stream rights! π
π¦ DESCRIPTION π¦
So glDrawTransformFeedbackStream draws primitives of the type you picked with mode, using a count retrieved from the transform feedback stream specified by stream of the transform feedback object specified by id. That's the whole vibe. π
Calling glDrawTransformFeedbackStream is equivalent to calling glDrawArrays() with mode 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. no cap, that's the equivalence. π₯
Also: calling glDrawTransformFeedback() is equivalent to calling glDrawTransformFeedbackStream with stream set to zero. tiny stream-zero shortcut energy. π§
π ERRORS π
GL_INVALID_ENUMis generated ifmodeis not an accepted value. rude mode rejected.GL_INVALID_VALUEis generated ifidis not the name of a transform feedback object.GL_INVALID_VALUEis generated ifstreamis greater than or equal to the value ofGL_MAX_VERTEX_STREAMS. stream check says nope.GL_INVALID_OPERATIONis 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_OPERATIONis generated if a geometry shader is active andmodeis incompatible with the input primitive type of the geometry shader in the currently installed program object.GL_INVALID_OPERATIONis generated ifmodeisGL_PATCHESand no tessellation control shader is active.GL_INVALID_OPERATIONis generated ifglEndTransformFeedbackhas never been called while the transform feedback object named byidwas bound. the "you forgot to end it" jumpscare, lowkey. π
π VERSION SUPPORT π
Function / Feature Name: glDrawTransformFeedbackStream
OpenGL Version table entries, bestie β exact vibes only:
2.0β-2.1β-3.0β-3.1β-3.2β-3.3β-4.0ββ4.1ββ4.2ββ4.3ββ4.4ββ4.5ββ
slay, the checkmarks start at 4.0. π
π SEE ALSO π
glDrawArrays()glDrawArraysInstanced()glDrawElements()glDrawRangeElements()glDrawTransformFeedback()
go read those too, bestie, the lore connects. π¦
π COPYRIGHT π
Copyright Β© 2010-2014 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/.
π COPYRIGHT π
Copyright Β© 2010-2014 Khronos Group.
okay bestie, that's the page! the footer energy is: source placeholder [FIXME: source], date 08/09/2021, and page GLDRAWTRANSFORMFEEDB(3G). mwah ππβ¨
π¦ where this page comes from
- centos-stream 9: gl-manpages 1.1-24.20190306.el9 Β· MIT and Open Publication
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms