Transform Feedback

From OpenGL.org
Revision as of 16:14, 16 October 2012 by Alfonse (Talk | contribs) (General outline.)

Jump to: navigation, search
Transform Feedback
Core in version 4.5
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.5
Core since version 4.0
Core ARB extension ARB_transform_feedback2

Feedback rendering

Feedback pausing and resuming

Reference