Transform Feedback: Difference between revisions

From OpenGL Wiki
Jump to navigation Jump to search
General outline.
m moving stub.
Line 12: Line 12:


'''Transform Feedback''' is the process of altering the rendering pipeline so that primitives processed by a [[Vertex Shader]] and optionally a [[Geometry Shader]] will be written to [[Buffer Objects|buffer objects]]. This allows one to preserve the post-transform rendering state of an object and resubmit this data multiple times.
'''Transform Feedback''' is the process of altering the rendering pipeline so that primitives processed by a [[Vertex Shader]] and optionally a [[Geometry Shader]] will be written to [[Buffer Objects|buffer objects]]. This allows one to preserve the post-transform rendering state of an object and resubmit this data multiple times.
{{stub}}


== Overview ==
== Overview ==
Line 52: Line 54:


* [[:Category:Core API Ref Transform Feedback]]: Function documentation for all transform feedback commands, except for those that actually render with the results of a feedback operation.
* [[:Category:Core API Ref Transform Feedback]]: Function documentation for all transform feedback commands, except for those that actually render with the results of a feedback operation.
{{stub}}


[[Category:General OpenGL]]
[[Category:General OpenGL]]

Revision as of 09:04, 30 January 2013

Transform Feedback
Core in version 4.6
Core since version 3.0
Core ARB extension

ARB_transform_feedback2, ARB_transform_feedback3,

ARB_transform_feedback_instanced
EXT extension EXT_transform_feedback
Vendor extension NV_transform_feedback

Transform Feedback is the process of altering the rendering pipeline so that primitives processed by a Vertex Shader and optionally a Geometry Shader will be written to buffer objects. This allows one to preserve the post-transform rendering state of an object and resubmit this data multiple times.

Overview

Note: Mention will be made of various functions that deal with multiple stream output. Feedback into multiple streams requires access to OpenGL 4.0 or ARB_transform_feedback3 and ARB_gpu_shader5. So if that is not available to you, ignore any such discussion.

Shader setup

Advanced interleaving

Advanced Feedback Interleaving
Core in version 4.0
Core ARB extension ARB_transform_feedback3

Multi-stream output


Multi-Stream Output
Core in version 4.0
Core ARB extension ARB_transform_feedback3

Buffer binding

Feedback process

Feedback objects

Transform Feedback Objects
Core in version 4.6
Core since version 4.0
Core ARB extension ARB_transform_feedback2

Feedback rendering

Feedback pausing and resuming

Reference