Class ARBGPUShaderInt64

java.lang.Object
org.lwjgl.opengl.ARBGPUShaderInt64

public class ARBGPUShaderInt64 extends Object
Native bindings to the ARB_gpu_shader_int64 extension.

The extension introduces the following features for all shader types:

  • support for 64-bit scalar and vector integer data types, including uniform API, uniform buffer object, transform feedback, and shader input and output support;
  • new built-in functions to pack and unpack 64-bit integer types into a two-component 32-bit integer vector;
  • new built-in functions to convert double-precision floating-point values to or from their 64-bit integer bit encodings;
  • vector relational functions supporting comparisons of vectors of 64-bit integer types; and
  • common functions abs, sign, min, max, clamp, and mix supporting arguments of 64-bit integer types.

Requires GL40 and GLSL 4.00.

  • Field Details

    • GL_INT64_ARB

      public static final int GL_INT64_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
    • GL_UNSIGNED_INT64_ARB

      public static final int GL_UNSIGNED_INT64_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
    • GL_INT64_VEC2_ARB

      public static final int GL_INT64_VEC2_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
    • GL_INT64_VEC3_ARB

      public static final int GL_INT64_VEC3_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
    • GL_INT64_VEC4_ARB

      public static final int GL_INT64_VEC4_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
    • GL_UNSIGNED_INT64_VEC2_ARB

      public static final int GL_UNSIGNED_INT64_VEC2_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
    • GL_UNSIGNED_INT64_VEC3_ARB

      public static final int GL_UNSIGNED_INT64_VEC3_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
    • GL_UNSIGNED_INT64_VEC4_ARB

      public static final int GL_UNSIGNED_INT64_VEC4_ARB
      Returned by the type parameter of GetActiveAttrib, GetActiveUniform, and GetTransformFeedbackVarying.
      See Also:
  • Method Details

    • glUniform1i64ARB

      public static void glUniform1i64ARB(int location, long x)
      Specifies the value of an int64_t uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
    • nglUniform1i64vARB

      public static void nglUniform1i64vARB(int location, int count, long value)
      Unsafe version of: Uniform1i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform1i64vARB

      public static void glUniform1i64vARB(int location, LongBuffer value)
      Specifies the value of a single int64_t uniform variable or a int64_t uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified int64_t variable
    • glProgramUniform1i64ARB

      public static void glProgramUniform1i64ARB(int program, int location, long x)
      Specifies the value of an int64_t uniform variable for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
    • nglProgramUniform1i64vARB

      public static void nglProgramUniform1i64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform1i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform1i64vARB

      public static void glProgramUniform1i64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single int64_t uniform variable or a int64_t uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified int64_t variable
    • glUniform2i64ARB

      public static void glUniform2i64ARB(int location, long x, long y)
      Specifies the value of an i64vec2 uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
    • nglUniform2i64vARB

      public static void nglUniform2i64vARB(int location, int count, long value)
      Unsafe version of: Uniform2i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform2i64vARB

      public static void glUniform2i64vARB(int location, LongBuffer value)
      Specifies the value of a single i64vec2 uniform variable or a i64vec2 uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified i64vec2 variable
    • glProgramUniform2i64ARB

      public static void glProgramUniform2i64ARB(int program, int location, long x, long y)
      Specifies the value of an i64vec2 uniform variable for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
    • nglProgramUniform2i64vARB

      public static void nglProgramUniform2i64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform2i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform2i64vARB

      public static void glProgramUniform2i64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single i64vec2 uniform variable or a i64vec2 uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified i64vec2 variable
    • glUniform3i64ARB

      public static void glUniform3i64ARB(int location, long x, long y, long z)
      Specifies the value of an i64vec3 uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
    • nglUniform3i64vARB

      public static void nglUniform3i64vARB(int location, int count, long value)
      Unsafe version of: Uniform3i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform3i64vARB

      public static void glUniform3i64vARB(int location, LongBuffer value)
      Specifies the value of a single i64vec3 uniform variable or a i64vec3 uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified i64vec3 variable
    • glProgramUniform3i64ARB

      public static void glProgramUniform3i64ARB(int program, int location, long x, long y, long z)
      Specifies the value of an i64vec3 uniform variable for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
    • nglProgramUniform3i64vARB

      public static void nglProgramUniform3i64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform3i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform3i64vARB

      public static void glProgramUniform3i64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single i64vec3 uniform variable or a i64vec3 uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified i64vec3 variable
    • glUniform4i64ARB

      public static void glUniform4i64ARB(int location, long x, long y, long z, long w)
      Specifies the value of an i64vec4 uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
      w - the uniform w value
    • nglUniform4i64vARB

      public static void nglUniform4i64vARB(int location, int count, long value)
      Unsafe version of: Uniform4i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform4i64vARB

      public static void glUniform4i64vARB(int location, LongBuffer value)
      Specifies the value of a single i64vec4 uniform variable or a i64vec4 uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified i64vec4 variable
    • glProgramUniform4i64ARB

      public static void glProgramUniform4i64ARB(int program, int location, long x, long y, long z, long w)
      Specifies the value of an i64vec4 uniform variable for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
      w - the uniform w value
    • nglProgramUniform4i64vARB

      public static void nglProgramUniform4i64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform4i64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform4i64vARB

      public static void glProgramUniform4i64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single i64vec4 uniform variable or a i64vec4 uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified i64vec4 variable
    • glUniform1ui64ARB

      public static void glUniform1ui64ARB(int location, long x)
      Specifies the value of an uint64_t uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
    • nglUniform1ui64vARB

      public static void nglUniform1ui64vARB(int location, int count, long value)
      Unsafe version of: Uniform1ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform1ui64vARB

      public static void glUniform1ui64vARB(int location, LongBuffer value)
      Specifies the value of a single uint64_t uniform variable or a uint64_t uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified uint64_t variable
    • glProgramUniform1ui64ARB

      public static void glProgramUniform1ui64ARB(int program, int location, long x)
      Specifies the value of an uint64_t uniform variable for the current program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
    • nglProgramUniform1ui64vARB

      public static void nglProgramUniform1ui64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform1ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform1ui64vARB

      public static void glProgramUniform1ui64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single uint64_t uniform variable or a uint64_t uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified uint64_t variable
    • glUniform2ui64ARB

      public static void glUniform2ui64ARB(int location, long x, long y)
      Specifies the value of an u64vec2 uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
    • nglUniform2ui64vARB

      public static void nglUniform2ui64vARB(int location, int count, long value)
      Unsafe version of: Uniform2ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform2ui64vARB

      public static void glUniform2ui64vARB(int location, LongBuffer value)
      Specifies the value of a single u64vec2 uniform variable or a u64vec2 uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified u64vec2 variable
    • glProgramUniform2ui64ARB

      public static void glProgramUniform2ui64ARB(int program, int location, long x, long y)
      Specifies the value of an u64vec2 uniform variable for the current program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
    • nglProgramUniform2ui64vARB

      public static void nglProgramUniform2ui64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform2ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform2ui64vARB

      public static void glProgramUniform2ui64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single u64vec2 uniform variable or a u64vec2 uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified u64vec2 variable
    • glUniform3ui64ARB

      public static void glUniform3ui64ARB(int location, long x, long y, long z)
      Specifies the value of an u64vec3 uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
    • nglUniform3ui64vARB

      public static void nglUniform3ui64vARB(int location, int count, long value)
      Unsafe version of: Uniform3ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform3ui64vARB

      public static void glUniform3ui64vARB(int location, LongBuffer value)
      Specifies the value of a single u64vec3 uniform variable or a u64vec3 uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified u64vec3 variable
    • glProgramUniform3ui64ARB

      public static void glProgramUniform3ui64ARB(int program, int location, long x, long y, long z)
      Specifies the value of an u64vec3 uniform variable for the current program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
    • nglProgramUniform3ui64vARB

      public static void nglProgramUniform3ui64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform3ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform3ui64vARB

      public static void glProgramUniform3ui64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single u64vec3 uniform variable or a u64vec3 uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified u64vec3 variable
    • glUniform4ui64ARB

      public static void glUniform4ui64ARB(int location, long x, long y, long z, long w)
      Specifies the value of an u64vec4 uniform variable for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
      w - the uniform w value
    • nglUniform4ui64vARB

      public static void nglUniform4ui64vARB(int location, int count, long value)
      Unsafe version of: Uniform4ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glUniform4ui64vARB

      public static void glUniform4ui64vARB(int location, LongBuffer value)
      Specifies the value of a single u64vec4 uniform variable or a u64vec4 uniform variable array for the current program object.
      Parameters:
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified u64vec4 variable
    • glProgramUniform4ui64ARB

      public static void glProgramUniform4ui64ARB(int program, int location, long x, long y, long z, long w)
      Specifies the value of an u64vec4 uniform variable for the current program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      x - the uniform x value
      y - the uniform y value
      z - the uniform z value
      w - the uniform w value
    • nglProgramUniform4ui64vARB

      public static void nglProgramUniform4ui64vARB(int program, int location, int count, long value)
      Unsafe version of: ProgramUniform4ui64vARB
      Parameters:
      count - the number of elements that are to be modified. This should be 1 if the targeted uniform variable is not an array, and 1 or more if it is an array.
    • glProgramUniform4ui64vARB

      public static void glProgramUniform4ui64vARB(int program, int location, LongBuffer value)
      Specifies the value of a single u64vec4 uniform variable or a u64vec4 uniform variable array for the specified program object.
      Parameters:
      program - the program object
      location - the location of the uniform variable to be modified
      value - a pointer to an array of count values that will be used to update the specified u64vec4 variable
    • nglGetUniformi64vARB

      public static void nglGetUniformi64vARB(int program, int location, long params)
      Unsafe version of: GetUniformi64vARB
    • glGetUniformi64vARB

      public static void glGetUniformi64vARB(int program, int location, LongBuffer params)
      Returns the int64_t value(s) of a uniform variable.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
      params - the value of the specified uniform variable
    • glGetUniformi64vARB

      public static long glGetUniformi64vARB(int program, int location)
      Returns the int64_t value(s) of a uniform variable.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
    • nglGetUniformui64vARB

      public static void nglGetUniformui64vARB(int program, int location, long params)
      Unsafe version of: GetUniformui64vARB
    • glGetUniformui64vARB

      public static void glGetUniformui64vARB(int program, int location, LongBuffer params)
      Returns the uint64_t value(s) of a uniform variable.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
      params - the value of the specified uniform variable
    • glGetUniformui64vARB

      public static long glGetUniformui64vARB(int program, int location)
      Returns the uint64_t value(s) of a uniform variable.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
    • nglGetnUniformi64vARB

      public static void nglGetnUniformi64vARB(int program, int location, int bufSize, long params)
      Unsafe version of: GetnUniformi64vARB
      Parameters:
      bufSize - the maximum number of values to write in params
    • glGetnUniformi64vARB

      public static void glGetnUniformi64vARB(int program, int location, LongBuffer params)
      Robust version of GetUniformi64vARB.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
      params - the value of the specified uniform variable
    • glGetnUniformi64vARB

      public static long glGetnUniformi64vARB(int program, int location)
      Robust version of GetUniformi64vARB.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
    • nglGetnUniformui64vARB

      public static void nglGetnUniformui64vARB(int program, int location, int bufSize, long params)
      Unsafe version of: GetnUniformui64vARB
      Parameters:
      bufSize - the maximum number of values to write in params
    • glGetnUniformui64vARB

      public static void glGetnUniformui64vARB(int program, int location, LongBuffer params)
      Robust version of GetUniformui64vARB.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
      params - the value of the specified uniform variable
    • glGetnUniformui64vARB

      public static long glGetnUniformui64vARB(int program, int location)
      Robust version of GetUniformui64vARB.
      Parameters:
      program - the program object to be queried
      location - the location of the uniform variable to be queried
    • glUniform1i64vARB

      public static void glUniform1i64vARB(int location, long[] value)
      Array version of: Uniform1i64vARB
    • glProgramUniform1i64vARB

      public static void glProgramUniform1i64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform1i64vARB
    • glUniform2i64vARB

      public static void glUniform2i64vARB(int location, long[] value)
      Array version of: Uniform2i64vARB
    • glProgramUniform2i64vARB

      public static void glProgramUniform2i64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform2i64vARB
    • glUniform3i64vARB

      public static void glUniform3i64vARB(int location, long[] value)
      Array version of: Uniform3i64vARB
    • glProgramUniform3i64vARB

      public static void glProgramUniform3i64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform3i64vARB
    • glUniform4i64vARB

      public static void glUniform4i64vARB(int location, long[] value)
      Array version of: Uniform4i64vARB
    • glProgramUniform4i64vARB

      public static void glProgramUniform4i64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform4i64vARB
    • glUniform1ui64vARB

      public static void glUniform1ui64vARB(int location, long[] value)
      Array version of: Uniform1ui64vARB
    • glProgramUniform1ui64vARB

      public static void glProgramUniform1ui64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform1ui64vARB
    • glUniform2ui64vARB

      public static void glUniform2ui64vARB(int location, long[] value)
      Array version of: Uniform2ui64vARB
    • glProgramUniform2ui64vARB

      public static void glProgramUniform2ui64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform2ui64vARB
    • glUniform3ui64vARB

      public static void glUniform3ui64vARB(int location, long[] value)
      Array version of: Uniform3ui64vARB
    • glProgramUniform3ui64vARB

      public static void glProgramUniform3ui64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform3ui64vARB
    • glUniform4ui64vARB

      public static void glUniform4ui64vARB(int location, long[] value)
      Array version of: Uniform4ui64vARB
    • glProgramUniform4ui64vARB

      public static void glProgramUniform4ui64vARB(int program, int location, long[] value)
      Array version of: ProgramUniform4ui64vARB
    • glGetUniformi64vARB

      public static void glGetUniformi64vARB(int program, int location, long[] params)
      Array version of: GetUniformi64vARB
    • glGetUniformui64vARB

      public static void glGetUniformui64vARB(int program, int location, long[] params)
      Array version of: GetUniformui64vARB
    • glGetnUniformi64vARB

      public static void glGetnUniformi64vARB(int program, int location, long[] params)
      Array version of: GetnUniformi64vARB
    • glGetnUniformui64vARB

      public static void glGetnUniformui64vARB(int program, int location, long[] params)
      Array version of: GetnUniformui64vARB