Class ARBTextureBufferRange

java.lang.Object
org.lwjgl.opengl.ARBTextureBufferRange

public class ARBTextureBufferRange extends Object
Native bindings to the ARB_texture_buffer_range extension.

ARB_texture_buffer_object (which was promoted to core in OpenGL 3.1) introduced the ability to attach the data store of a buffer object to a buffer texture and access it from shaders. The extension only allows the entire store of the buffer object to the texture. This extension expands on this and allows a sub-range of the buffer's data store to be attached to a texture. This can be used, for example, to allow multiple buffer textures to be backed by independent sub-ranges of the same buffer object, or for different sub-ranges of a single buffer object to be used for different purposes.

Requires OpenGL 1.5. Promoted to core in OpenGL 4.3.

  • Field Details

    • GL_TEXTURE_BUFFER_OFFSET

      public static final int GL_TEXTURE_BUFFER_OFFSET
      Accepted by the pname parameter of GetTexLevelParameter.
      See Also:
    • GL_TEXTURE_BUFFER_SIZE

      public static final int GL_TEXTURE_BUFFER_SIZE
      Accepted by the pname parameter of GetTexLevelParameter.
      See Also:
    • GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT

      public static final int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT
      Accepted by the pname parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev.
      See Also:
  • Method Details

    • glTexBufferRange

      public static void glTexBufferRange(int target, int internalformat, int buffer, long offset, long size)
      Binds a range of a buffer's data store to a buffer texture.
      Parameters:
      target - the target of the operation. Must be:
      TEXTURE_BUFFER
      internalformat - the internal format of the data in the store belonging to buffer
      buffer - the name of the buffer object whose storage to attach to the active buffer texture
      offset - the offset of the start of the range of the buffer's data store to attach
      size - the size of the range of the buffer's data store to attach
    • glTextureBufferRangeEXT

      public static void glTextureBufferRangeEXT(int texture, int target, int internalformat, int buffer, long offset, long size)
      DSA version of TexBufferRange.
      Parameters:
      texture - the texture object
      target - the target of the operation. Must be:
      TEXTURE_BUFFER
      internalformat - the internal format of the data in the store belonging to buffer
      buffer - the name of the buffer object whose storage to attach to the active buffer texture
      offset - the offset of the start of the range of the buffer's data store to attach
      size - the size of the range of the buffer's data store to attach