Class NVVertexBufferUnifiedMemory

java.lang.Object
org.lwjgl.opengl.NVVertexBufferUnifiedMemory

public class NVVertexBufferUnifiedMemory extends Object
Native bindings to the NV_vertex_buffer_unified_memory extension.

This extension provides a mechanism to specify vertex attrib and element array locations using GPU addresses.

Binding vertex buffers is one of the most frequent and expensive operations in many GL applications, due to the cost of chasing pointers and binding objects described in the Overview of NV_shader_buffer_load. The intent of this extension is to enable a way for the application to specify vertex attrib state that alleviates the overhead of object binds and driver memory management.

  • Field Details

    • GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV

      public static final int GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV
      Accepted by the cap parameter of DisableClientState, EnableClientState, IsEnabled.
      See Also:
    • GL_ELEMENT_ARRAY_UNIFIED_NV

      public static final int GL_ELEMENT_ARRAY_UNIFIED_NV
      Accepted by the cap parameter of DisableClientState, EnableClientState, IsEnabled.
      See Also:
    • GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV

      public static final int GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64i_vNV.
      See Also:
    • GL_TEXTURE_COORD_ARRAY_ADDRESS_NV

      public static final int GL_TEXTURE_COORD_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64i_vNV.
      See Also:
    • GL_VERTEX_ARRAY_ADDRESS_NV

      public static final int GL_VERTEX_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_NORMAL_ARRAY_ADDRESS_NV

      public static final int GL_NORMAL_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_COLOR_ARRAY_ADDRESS_NV

      public static final int GL_COLOR_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_INDEX_ARRAY_ADDRESS_NV

      public static final int GL_INDEX_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_EDGE_FLAG_ARRAY_ADDRESS_NV

      public static final int GL_EDGE_FLAG_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV

      public static final int GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_FOG_COORD_ARRAY_ADDRESS_NV

      public static final int GL_FOG_COORD_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_ELEMENT_ARRAY_ADDRESS_NV

      public static final int GL_ELEMENT_ARRAY_ADDRESS_NV
      Accepted by the pname parameter of BufferAddressRangeNV and the value parameter of GetIntegerui64vNV.
      See Also:
    • GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV

      public static final int GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV
      Accepted by the target parameter of GetIntegeri_vNV.
      See Also:
    • GL_TEXTURE_COORD_ARRAY_LENGTH_NV

      public static final int GL_TEXTURE_COORD_ARRAY_LENGTH_NV
      Accepted by the target parameter of GetIntegeri_vNV.
      See Also:
    • GL_VERTEX_ARRAY_LENGTH_NV

      public static final int GL_VERTEX_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
    • GL_NORMAL_ARRAY_LENGTH_NV

      public static final int GL_NORMAL_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
    • GL_COLOR_ARRAY_LENGTH_NV

      public static final int GL_COLOR_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
    • GL_INDEX_ARRAY_LENGTH_NV

      public static final int GL_INDEX_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
    • GL_EDGE_FLAG_ARRAY_LENGTH_NV

      public static final int GL_EDGE_FLAG_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
    • GL_SECONDARY_COLOR_ARRAY_LENGTH_NV

      public static final int GL_SECONDARY_COLOR_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
    • GL_FOG_COORD_ARRAY_LENGTH_NV

      public static final int GL_FOG_COORD_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
    • GL_ELEMENT_ARRAY_LENGTH_NV

      public static final int GL_ELEMENT_ARRAY_LENGTH_NV
      Accepted by the value parameter of GetIntegerv.
      See Also:
  • Method Details

    • glBufferAddressRangeNV

      public static void glBufferAddressRangeNV(int pname, int index, long address, long length)
    • glVertexFormatNV

      public static void glVertexFormatNV(int size, int type, int stride)
    • glNormalFormatNV

      public static void glNormalFormatNV(int type, int stride)
    • glColorFormatNV

      public static void glColorFormatNV(int size, int type, int stride)
    • glIndexFormatNV

      public static void glIndexFormatNV(int type, int stride)
    • glTexCoordFormatNV

      public static void glTexCoordFormatNV(int size, int type, int stride)
    • glEdgeFlagFormatNV

      public static void glEdgeFlagFormatNV(int stride)
    • glSecondaryColorFormatNV

      public static void glSecondaryColorFormatNV(int size, int type, int stride)
    • glFogCoordFormatNV

      public static void glFogCoordFormatNV(int type, int stride)
    • glVertexAttribFormatNV

      public static void glVertexAttribFormatNV(int index, int size, int type, boolean normalized, int stride)
    • glVertexAttribIFormatNV

      public static void glVertexAttribIFormatNV(int index, int size, int type, int stride)
    • nglGetIntegerui64i_vNV

      public static void nglGetIntegerui64i_vNV(int value, int index, long result)
    • glGetIntegerui64i_vNV

      public static void glGetIntegerui64i_vNV(int value, int index, LongBuffer result)
    • glGetIntegerui64iNV

      public static long glGetIntegerui64iNV(int value, int index)
    • glGetIntegerui64i_vNV

      public static void glGetIntegerui64i_vNV(int value, int index, long[] result)
      Array version of: GetIntegerui64i_vNV