public class NVTransformFeedback
extends java.lang.Object
This extension provides a new mode to the GL, called transform feedback, which records vertex attributes of the primitives processed by the GL. The selected attributes are written into buffer objects, and can be written with each attribute in a separate buffer object or with all attributes interleaved into a single buffer object. If a geometry program or shader is active, the primitives recorded are those emitted by the geometry program. Otherwise, transform feedback captures primitives whose vertex are transformed by a vertex program or shader, or by fixed-function vertex processing. In either case, the primitives captured are those generated prior to clipping. Transform feedback mode is capable of capturing transformed vertex data generated by fixed-function vertex processing, outputs from assembly vertex or geometry programs, or varying variables emitted from GLSL vertex or geometry shaders.
The vertex data recorded in transform feedback mode is stored into buffer objects as an array of vertex attributes. The regular representation and the use of buffer objects allows the recorded data to be processed directly by the GL without requiring CPU intervention to copy data. In particular, transform feedback data can be used for vertex arrays (via vertex buffer objects), as the source for pixel data (via pixel buffer objects), as program constant data (via the NV_parameter_buffer_object or EXT_bindable_uniform extension), or via any other extension that makes use of buffer objects.
This extension introduces new query object support to allow transform feedback mode to operate asynchronously. Query objects allow applications to determine when transform feedback results are complete, as well as the number of primitives processed and written back to buffer objects while in transform feedback mode. This extension also provides a new rasterizer discard enable, which allows applications to use transform feedback to capture vertex attributes without rendering anything.
Requires OpenGL 1.5.
| Modifier and Type | Field and Description |
|---|---|
static int |
GL_ACTIVE_VARYING_MAX_LENGTH_NV
Accepted by the
pname parameter of GetProgramiv. |
static int |
GL_ACTIVE_VARYINGS_NV
Accepted by the
pname parameter of GetProgramiv. |
static int |
GL_BACK_PRIMARY_COLOR_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_BACK_SECONDARY_COLOR_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_CLIP_DISTANCE_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_GENERIC_ATTRIB_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_INTERLEAVED_ATTRIBS_NV
Accepted by the
bufferMode parameter of TransformFeedbackAttribsNV and TransformFeedbackVaryingsNV. |
static int |
GL_LAYER_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV
Accepted by the
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv. |
static int |
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV
Accepted by the
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv. |
static int |
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV
Accepted by the
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv. |
static int |
GL_PRIMITIVE_ID_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_PRIMITIVES_GENERATED_NV
Accepted by the
target parameter of BeginQuery, EndQuery, and GetQueryiv. |
static int |
GL_RASTERIZER_DISCARD_NV
Accepted by the
cap parameter of Enable, Disable, and IsEnabled, and by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and
GetDoublev. |
static int |
GL_SECONDARY_COLOR_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_SEPARATE_ATTRIBS_NV
Accepted by the
bufferMode parameter of TransformFeedbackAttribsNV and TransformFeedbackVaryingsNV. |
static int |
GL_TEXTURE_COORD_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
static int |
GL_TRANSFORM_FEEDBACK_ATTRIBS_NV
Accepted by the
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv. |
static int |
GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV
Accepted by the
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT, and by the pname parameter of GetBooleanv,
GetDoublev, GetIntegerv, and GetFloatv. |
static int |
GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV
Accepted by the
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, GetFloatv, and GetProgramiv. |
static int |
GL_TRANSFORM_FEEDBACK_BUFFER_NV
Accepted by the
target parameters of BindBuffer, BufferData, BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, GetBufferPointerv,
BindBufferRangeNV, BindBufferOffsetNV and BindBufferBaseNV. |
static int |
GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV
Accepted by the
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT. |
static int |
GL_TRANSFORM_FEEDBACK_BUFFER_START_NV
Accepted by the
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT. |
static int |
GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV
Accepted by the
target parameter of BeginQuery, EndQuery, and GetQueryiv. |
static int |
GL_TRANSFORM_FEEDBACK_RECORD_NV
Accepted by the
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT. |
static int |
GL_TRANSFORM_FEEDBACK_VARYINGS_NV
Accepted by the
pname parameter of GetProgramiv. |
static int |
GL_VERTEX_ID_NV
Accepted by the
attribs parameter of TransformFeedbackAttribsNV. |
| Modifier and Type | Method and Description |
|---|---|
static void |
glActiveVaryingNV(int program,
java.nio.ByteBuffer name) |
static void |
glActiveVaryingNV(int program,
java.lang.CharSequence name) |
static void |
glBeginTransformFeedbackNV(int primitiveMode) |
static void |
glBindBufferBaseNV(int target,
int index,
int buffer) |
static void |
glBindBufferOffsetNV(int target,
int index,
int buffer,
long offset) |
static void |
glBindBufferRangeNV(int target,
int index,
int buffer,
long offset,
long size) |
static void |
glEndTransformFeedbackNV() |
static void |
glGetActiveVaryingNV(int program,
int index,
int[] length,
int[] size,
int[] type,
java.nio.ByteBuffer name)
Array version of:
GetActiveVaryingNV |
static void |
glGetActiveVaryingNV(int program,
int index,
java.nio.IntBuffer length,
java.nio.IntBuffer size,
java.nio.IntBuffer type,
java.nio.ByteBuffer name) |
static int |
glGetTransformFeedbackVaryingNV(int program,
int index) |
static void |
glGetTransformFeedbackVaryingNV(int program,
int index,
int[] location)
Array version of:
GetTransformFeedbackVaryingNV |
static void |
glGetTransformFeedbackVaryingNV(int program,
int index,
java.nio.IntBuffer location) |
static int |
glGetVaryingLocationNV(int program,
java.nio.ByteBuffer name) |
static int |
glGetVaryingLocationNV(int program,
java.lang.CharSequence name) |
static void |
glTransformFeedbackAttribsNV(int[] attribs,
int bufferMode)
Array version of:
TransformFeedbackAttribsNV |
static void |
glTransformFeedbackAttribsNV(java.nio.IntBuffer attribs,
int bufferMode) |
static void |
glTransformFeedbackStreamAttribsNV(int[] attribs,
int[] bufstreams,
int bufferMode)
Array version of:
TransformFeedbackStreamAttribsNV |
static void |
glTransformFeedbackStreamAttribsNV(java.nio.IntBuffer attribs,
java.nio.IntBuffer bufstreams,
int bufferMode) |
static void |
glTransformFeedbackVaryingsNV(int program,
int[] locations,
int bufferMode)
Array version of:
TransformFeedbackVaryingsNV |
static void |
glTransformFeedbackVaryingsNV(int program,
java.nio.IntBuffer locations,
int bufferMode) |
static void |
nglActiveVaryingNV(int program,
long name) |
static void |
nglGetActiveVaryingNV(int program,
int index,
int bufSize,
long length,
long size,
long type,
long name) |
static void |
nglGetTransformFeedbackVaryingNV(int program,
int index,
long location) |
static int |
nglGetVaryingLocationNV(int program,
long name) |
static void |
nglTransformFeedbackAttribsNV(int count,
long attribs,
int bufferMode) |
static void |
nglTransformFeedbackStreamAttribsNV(int count,
long attribs,
int nbuffers,
long bufstreams,
int bufferMode) |
static void |
nglTransformFeedbackVaryingsNV(int program,
int count,
long locations,
int bufferMode) |
public static final int GL_TRANSFORM_FEEDBACK_BUFFER_NV
target parameters of BindBuffer, BufferData, BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, GetBufferPointerv,
BindBufferRangeNV, BindBufferOffsetNV and BindBufferBaseNV.public static final int GL_TRANSFORM_FEEDBACK_BUFFER_START_NV
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT.public static final int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT.public static final int GL_TRANSFORM_FEEDBACK_RECORD_NV
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT.public static final int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV
param parameter of GetIntegerIndexedvEXT and GetBooleanIndexedvEXT, and by the pname parameter of GetBooleanv,
GetDoublev, GetIntegerv, and GetFloatv.public static final int GL_INTERLEAVED_ATTRIBS_NV
bufferMode parameter of TransformFeedbackAttribsNV and TransformFeedbackVaryingsNV.public static final int GL_SEPARATE_ATTRIBS_NV
bufferMode parameter of TransformFeedbackAttribsNV and TransformFeedbackVaryingsNV.public static final int GL_PRIMITIVES_GENERATED_NV
target parameter of BeginQuery, EndQuery, and GetQueryiv.public static final int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV
target parameter of BeginQuery, EndQuery, and GetQueryiv.public static final int GL_RASTERIZER_DISCARD_NV
cap parameter of Enable, Disable, and IsEnabled, and by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and
GetDoublev.public static final int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.public static final int GL_TRANSFORM_FEEDBACK_ATTRIBS_NV
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, and GetFloatv.public static final int GL_ACTIVE_VARYINGS_NV
pname parameter of GetProgramiv.public static final int GL_ACTIVE_VARYING_MAX_LENGTH_NV
pname parameter of GetProgramiv.public static final int GL_TRANSFORM_FEEDBACK_VARYINGS_NV
pname parameter of GetProgramiv.public static final int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV
pname parameter of GetBooleanv, GetDoublev, GetIntegerv, GetFloatv, and GetProgramiv.public static final int GL_BACK_PRIMARY_COLOR_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_BACK_SECONDARY_COLOR_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_TEXTURE_COORD_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_CLIP_DISTANCE_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_VERTEX_ID_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_PRIMITIVE_ID_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_GENERIC_ATTRIB_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_SECONDARY_COLOR_NV
attribs parameter of TransformFeedbackAttribsNV.public static final int GL_LAYER_NV
attribs parameter of TransformFeedbackAttribsNV.public static void glBeginTransformFeedbackNV(int primitiveMode)
public static void glEndTransformFeedbackNV()
public static void nglTransformFeedbackAttribsNV(int count,
long attribs,
int bufferMode)
public static void glTransformFeedbackAttribsNV(java.nio.IntBuffer attribs,
int bufferMode)
public static void glBindBufferRangeNV(int target,
int index,
int buffer,
long offset,
long size)
public static void glBindBufferOffsetNV(int target,
int index,
int buffer,
long offset)
public static void glBindBufferBaseNV(int target,
int index,
int buffer)
public static void nglTransformFeedbackVaryingsNV(int program,
int count,
long locations,
int bufferMode)
public static void glTransformFeedbackVaryingsNV(int program,
java.nio.IntBuffer locations,
int bufferMode)
public static void nglActiveVaryingNV(int program,
long name)
public static void glActiveVaryingNV(int program,
java.nio.ByteBuffer name)
public static void glActiveVaryingNV(int program,
java.lang.CharSequence name)
public static int nglGetVaryingLocationNV(int program,
long name)
public static int glGetVaryingLocationNV(int program,
java.nio.ByteBuffer name)
public static int glGetVaryingLocationNV(int program,
java.lang.CharSequence name)
public static void nglGetActiveVaryingNV(int program,
int index,
int bufSize,
long length,
long size,
long type,
long name)
public static void glGetActiveVaryingNV(int program,
int index,
@Nullable
java.nio.IntBuffer length,
java.nio.IntBuffer size,
java.nio.IntBuffer type,
java.nio.ByteBuffer name)
public static void nglGetTransformFeedbackVaryingNV(int program,
int index,
long location)
public static void glGetTransformFeedbackVaryingNV(int program,
int index,
java.nio.IntBuffer location)
public static int glGetTransformFeedbackVaryingNV(int program,
int index)
public static void nglTransformFeedbackStreamAttribsNV(int count,
long attribs,
int nbuffers,
long bufstreams,
int bufferMode)
public static void glTransformFeedbackStreamAttribsNV(java.nio.IntBuffer attribs,
java.nio.IntBuffer bufstreams,
int bufferMode)
public static void glTransformFeedbackAttribsNV(int[] attribs,
int bufferMode)
TransformFeedbackAttribsNVpublic static void glTransformFeedbackVaryingsNV(int program,
int[] locations,
int bufferMode)
TransformFeedbackVaryingsNVpublic static void glGetActiveVaryingNV(int program,
int index,
@Nullable
int[] length,
int[] size,
int[] type,
java.nio.ByteBuffer name)
GetActiveVaryingNVpublic static void glGetTransformFeedbackVaryingNV(int program,
int index,
int[] location)
GetTransformFeedbackVaryingNVpublic static void glTransformFeedbackStreamAttribsNV(int[] attribs,
int[] bufstreams,
int bufferMode)
TransformFeedbackStreamAttribsNVCopyright LWJGL. All Rights Reserved. License terms.