Class EXTTransformFeedback



  • public class EXTTransformFeedback
    extends java.lang.Object
    Native bindings to the EXT_transform_feedback extension.

    This extension provides a new mode to the GL, called transform feedback, which records selected vertex attributes for each primitive 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 shader is active, the primitives recorded are those emitted by the geometry shader. Otherwise, transform feedback captures primitives whose vertices are transformed by a vertex shader. In either case, the primitives captured are those generated prior to clipping. Transform feedback mode captures the values of specified 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 shader constant data (via the NV_parameter_buffer_object or EXT_bindable_uniform extensions), 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 2.0 or ARB_shader_objects. Promoted to core in OpenGL 3.0.

    • Method Detail

      • glBindBufferRangeEXT

        public static void glBindBufferRangeEXT(int target,
                                                int index,
                                                int buffer,
                                                long offset,
                                                long size)
      • glBindBufferOffsetEXT

        public static void glBindBufferOffsetEXT(int target,
                                                 int index,
                                                 int buffer,
                                                 long offset)
      • glBindBufferBaseEXT

        public static void glBindBufferBaseEXT(int target,
                                               int index,
                                               int buffer)
      • glBeginTransformFeedbackEXT

        public static void glBeginTransformFeedbackEXT(int primitiveMode)
      • glEndTransformFeedbackEXT

        public static void glEndTransformFeedbackEXT()
      • glTransformFeedbackVaryingsEXT

        public static void glTransformFeedbackVaryingsEXT(int program,
                                                          org.lwjgl.PointerBuffer varyings,
                                                          int bufferMode)
      • glTransformFeedbackVaryingsEXT

        public static void glTransformFeedbackVaryingsEXT(int program,
                                                          java.lang.CharSequence[] varyings,
                                                          int bufferMode)
      • glTransformFeedbackVaryingsEXT

        public static void glTransformFeedbackVaryingsEXT(int program,
                                                          java.lang.CharSequence varying,
                                                          int bufferMode)
      • glGetTransformFeedbackVaryingEXT

        public static void glGetTransformFeedbackVaryingEXT(int program,
                                                            int index,
                                                            java.nio.IntBuffer length,
                                                            java.nio.IntBuffer size,
                                                            java.nio.IntBuffer type,
                                                            java.nio.ByteBuffer name)
      • glGetTransformFeedbackVaryingEXT

        public static java.lang.String glGetTransformFeedbackVaryingEXT(int program,
                                                                        int index,
                                                                        int bufSize,
                                                                        java.nio.IntBuffer size,
                                                                        java.nio.IntBuffer type)
      • glGetTransformFeedbackVaryingEXT

        public static java.lang.String glGetTransformFeedbackVaryingEXT(int program,
                                                                        int index,
                                                                        java.nio.IntBuffer size,
                                                                        java.nio.IntBuffer type)
      • glGetIntegerIndexedvEXT

        public static void glGetIntegerIndexedvEXT(int param,
                                                   int index,
                                                   java.nio.IntBuffer values)
      • glGetIntegerIndexedEXT

        public static int glGetIntegerIndexedEXT(int param,
                                                 int index)
      • glGetBooleanIndexedvEXT

        public static void glGetBooleanIndexedvEXT(int param,
                                                   int index,
                                                   java.nio.ByteBuffer values)
      • glGetBooleanIndexedEXT

        public static boolean glGetBooleanIndexedEXT(int param,
                                                     int index)
      • glGetTransformFeedbackVaryingEXT

        public static void glGetTransformFeedbackVaryingEXT(int program,
                                                            int index,
                                                            int[] length,
                                                            int[] size,
                                                            int[] type,
                                                            java.nio.ByteBuffer name)
      • glGetIntegerIndexedvEXT

        public static void glGetIntegerIndexedvEXT(int param,
                                                   int index,
                                                   int[] values)
        Array version of: GetIntegerIndexedvEXT