Class GL46
- java.lang.Object
-
- org.lwjgl.opengl.GL46
-
public class GL46 extends java.lang.Object
The core OpenGL 4.6 functionality. OpenGL 4.6 implementations support revision 4.60 of the OpenGL Shading Language.Extensions promoted to core in this release:
-
-
Field Summary
Fields Modifier and Type Field and Description static int
GL_CLIPPING_INPUT_PRIMITIVES
GL_CLIPPING_OUTPUT_PRIMITIVES
GL_COMPUTE_SHADER_INVOCATIONSAccepted by thetarget
parameter ofBeginQuery
,EndQuery
,GetQueryiv
,BeginQueryIndexed
,EndQueryIndexed
andGetQueryIndexediv
.static int
GL_CONTEXT_FLAG_NO_ERROR_BIT
If set inCONTEXT_FLAGS
, then no error behavior is enabled for this context.static int
GL_FRAGMENT_SHADER_INVOCATIONS
GL_GEOMETRY_SHADER_PRIMITIVES_EMITTEDAccepted by thetarget
parameter ofBeginQuery
,EndQuery
,GetQueryiv
,BeginQueryIndexed
,EndQueryIndexed
andGetQueryIndexediv
.static int
GL_MAX_TEXTURE_MAX_ANISOTROPY
Accepted by thepname
parameters of GetBooleanv, GetDoublev, GetFloatv, and GetIntegerv.static int
GL_NUM_SPIR_V_EXTENSIONS
Accepted by thepname
parameter ofGetIntegerv
.static int
GL_PARAMETER_BUFFER
Accepted by thetarget
parameters of BindBuffer, BufferData, BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, GetBufferPointerv, MapBufferRange, FlushMappedBufferRange, GetBufferParameteriv, and CopyBufferSubData.static int
GL_PARAMETER_BUFFER_BINDING
Accepted by thevalue
parameter of GetIntegerv, GetBooleanv, GetFloatv, and GetDoublev.static int
GL_POLYGON_OFFSET_CLAMP
Accepted by thepname
parameters of GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev.static int
GL_PRIMITIVES_SUBMITTED
Accepted by thetarget
parameter ofBeginQuery
,EndQuery
,GetQueryiv
,BeginQueryIndexed
,EndQueryIndexed
andGetQueryIndexediv
.static int
GL_SHADER_BINARY_FORMAT_SPIR_V
Accepted by thebinaryformat
parameter ofShaderBinary
.static int
GL_SPIR_V_BINARY
Accepted by thepname
parameter ofGetShaderiv
.static int
GL_SPIR_V_EXTENSIONS
Accepted by thename
parameter ofGetStringi
.static int
GL_TESS_CONTROL_SHADER_PATCHES
GL_TESS_EVALUATION_SHADER_INVOCATIONSAccepted by thetarget
parameter ofBeginQuery
,EndQuery
,GetQueryiv
,BeginQueryIndexed
,EndQueryIndexed
andGetQueryIndexediv
.static int
GL_TEXTURE_MAX_ANISOTROPY
Accepted by thepname
parameters of GetTexParameterfv, GetTexParameteriv, TexParameterf, TexParameterfv, TexParameteri, and TexParameteriv.static int
GL_TRANSFORM_FEEDBACK_OVERFLOW
GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW
GL_VERTEX_SHADER_INVOCATIONS
GL_VERTICES_SUBMITTEDAccepted by thetarget
parameter ofBeginQuery
,EndQuery
,GetQueryiv
,BeginQueryIndexed
,EndQueryIndexed
andGetQueryIndexediv
.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static void
glMultiDrawArraysIndirectCount(int mode, java.nio.ByteBuffer indirect, long drawcount, int maxdrawcount, int stride)
static void
glMultiDrawArraysIndirectCount(int mode, int[] indirect, long drawcount, int maxdrawcount, int stride)
static void
glMultiDrawArraysIndirectCount(int mode, java.nio.IntBuffer indirect, long drawcount, int maxdrawcount, int stride)
static void
glMultiDrawArraysIndirectCount(int mode, long indirect, long drawcount, int maxdrawcount, int stride)
static void
glMultiDrawElementsIndirectCount(int mode, int type, java.nio.ByteBuffer indirect, long drawcount, int maxdrawcount, int stride)
static void
glMultiDrawElementsIndirectCount(int mode, int type, int[] indirect, long drawcount, int maxdrawcount, int stride)
static void
glMultiDrawElementsIndirectCount(int mode, int type, java.nio.IntBuffer indirect, long drawcount, int maxdrawcount, int stride)
static void
glMultiDrawElementsIndirectCount(int mode, int type, long indirect, long drawcount, int maxdrawcount, int stride)
static void
glPolygonOffsetClamp(float factor, float units, float clamp)
static void
glSpecializeShader(int shader, java.nio.ByteBuffer pEntryPoint, int[] pConstantIndex, int[] pConstantValue)
static void
glSpecializeShader(int shader, java.nio.ByteBuffer pEntryPoint, java.nio.IntBuffer pConstantIndex, java.nio.IntBuffer pConstantValue)
static void
glSpecializeShader(int shader, java.lang.CharSequence pEntryPoint, int[] pConstantIndex, int[] pConstantValue)
static void
glSpecializeShader(int shader, java.lang.CharSequence pEntryPoint, java.nio.IntBuffer pConstantIndex, java.nio.IntBuffer pConstantValue)
-
-
-
Field Detail
-
GL_PARAMETER_BUFFER
Accepted by thetarget
parameters of BindBuffer, BufferData, BufferSubData, MapBuffer, UnmapBuffer, GetBufferSubData, GetBufferPointerv, MapBufferRange, FlushMappedBufferRange, GetBufferParameteriv, and CopyBufferSubData.
-
GL_PARAMETER_BUFFER_BINDING
Accepted by thevalue
parameter of GetIntegerv, GetBooleanv, GetFloatv, and GetDoublev.
-
GL_VERTICES_SUBMITTED, GL_PRIMITIVES_SUBMITTED, GL_VERTEX_SHADER_INVOCATIONS, GL_TESS_CONTROL_SHADER_PATCHES, GL_TESS_EVALUATION_SHADER_INVOCATIONS, GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED, GL_FRAGMENT_SHADER_INVOCATIONS, GL_COMPUTE_SHADER_INVOCATIONS, GL_CLIPPING_INPUT_PRIMITIVES, GL_CLIPPING_OUTPUT_PRIMITIVES
Accepted by thetarget
parameter ofBeginQuery
,EndQuery
,GetQueryiv
,BeginQueryIndexed
,EndQueryIndexed
andGetQueryIndexediv
.
-
GL_POLYGON_OFFSET_CLAMP
Accepted by thepname
parameters of GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev.
-
GL_CONTEXT_FLAG_NO_ERROR_BIT
If set inCONTEXT_FLAGS
, then no error behavior is enabled for this context.
-
GL_SHADER_BINARY_FORMAT_SPIR_V
Accepted by thebinaryformat
parameter ofShaderBinary
.
-
GL_SPIR_V_BINARY
Accepted by thepname
parameter ofGetShaderiv
.
-
GL_SPIR_V_EXTENSIONS
Accepted by thename
parameter ofGetStringi
.
-
GL_NUM_SPIR_V_EXTENSIONS
Accepted by thepname
parameter ofGetIntegerv
.
-
GL_TEXTURE_MAX_ANISOTROPY
Accepted by thepname
parameters of GetTexParameterfv, GetTexParameteriv, TexParameterf, TexParameterfv, TexParameteri, and TexParameteriv.
-
GL_MAX_TEXTURE_MAX_ANISOTROPY
Accepted by thepname
parameters of GetBooleanv, GetDoublev, GetFloatv, and GetIntegerv.
-
GL_TRANSFORM_FEEDBACK_OVERFLOW, GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW
Accepted by thetarget
parameter ofBeginQuery
,EndQuery
,GetQueryiv
,BeginQueryIndexed
,EndQueryIndexed
andGetQueryIndexediv
.
-
-
Method Detail
-
glMultiDrawArraysIndirectCount
public static void glMultiDrawArraysIndirectCount(int mode, java.nio.ByteBuffer indirect, long drawcount, int maxdrawcount, int stride) public static void glMultiDrawArraysIndirectCount(int mode, long indirect, long drawcount, int maxdrawcount, int stride) public static void glMultiDrawArraysIndirectCount(int mode, java.nio.IntBuffer indirect, long drawcount, int maxdrawcount, int stride)
Behaves similarly toMultiDrawArraysIndirect
, except thatdrawcount
defines an offset (in bytes) into the buffer object bound to thePARAMETER_BUFFER
binding point at which a singlesizei
typed value is stored, which contains the draw count.maxdrawcount
specifies the maximum number of draws that are expected to be stored in the buffer. If the value stored atdrawcount
into the buffer is greater thanmaxdrawcount
, the implementation stops processing draws aftermaxdrawcount
parameter sets.drawcount
must be a multiple of four.- Parameters:
mode
- what kind of primitives to render. One of:POINTS
LINE_STRIP
LINE_LOOP
LINES
POLYGON
TRIANGLE_STRIP
TRIANGLE_FAN
TRIANGLES
QUAD_STRIP
QUADS
LINES_ADJACENCY
LINE_STRIP_ADJACENCY
TRIANGLES_ADJACENCY
TRIANGLE_STRIP_ADJACENCY
PATCHES
indirect
- an array of structures containing the draw parametersdrawcount
- the offset into the parameter buffer objectmaxdrawcount
- the maximum number of drawsstride
- the distance in basic machine units between elements of the draw parameter array
-
glMultiDrawElementsIndirectCount
public static void glMultiDrawElementsIndirectCount(int mode, int type, java.nio.ByteBuffer indirect, long drawcount, int maxdrawcount, int stride) public static void glMultiDrawElementsIndirectCount(int mode, int type, long indirect, long drawcount, int maxdrawcount, int stride) public static void glMultiDrawElementsIndirectCount(int mode, int type, java.nio.IntBuffer indirect, long drawcount, int maxdrawcount, int stride)
Behaves similarly toMultiDrawElementsIndirect
, except thatdrawcount
defines an offset (in bytes) into the buffer object bound to thePARAMETER_BUFFER
binding point at which a singlesizei
typed value is stored, which contains the draw count.maxdrawcount
specifies the maximum number of draws that are expected to be stored in the buffer. If the value stored atdrawcount
into the buffer is greater thanmaxdrawcount
, the implementation stops processing draws aftermaxdrawcount
parameter sets.drawcount
must be a multiple of four.- Parameters:
mode
- what kind of primitives to render. One of:POINTS
LINE_STRIP
LINE_LOOP
LINES
POLYGON
TRIANGLE_STRIP
TRIANGLE_FAN
TRIANGLES
QUAD_STRIP
QUADS
LINES_ADJACENCY
LINE_STRIP_ADJACENCY
TRIANGLES_ADJACENCY
TRIANGLE_STRIP_ADJACENCY
PATCHES
type
- the type of data in the buffer bound to the GL_ELEMENT_ARRAY_BUFFER binding. One of:UNSIGNED_BYTE
UNSIGNED_SHORT
UNSIGNED_INT
indirect
- a structure containing an array of draw parametersdrawcount
- the offset into the parameter buffer objectmaxdrawcount
- the maximum number of drawsstride
- the distance in basic machine units between elements of the draw parameter array
-
glPolygonOffsetClamp
public static void glPolygonOffsetClamp(float factor, float units, float clamp)
The depth values of all fragments generated by the rasterization of a polygon may be offset by a single value that is computed for that polygon. This function determines this value.factor
scales the maximum depth slope of the polygon, andunits
scales an implementation-dependent constant that relates to the usable resolution of the depth buffer. The resulting values are summed to produce the polygon offset value, which may then be clamped to a minimum or maximum value specified byclamp
.The values
factor
,units
, andclamp
may each be positive, negative, or zero. Calling the commandPolygonOffset
is equivalent to calling the commandPolygonOffsetClamp
with clamp equal to zero.- Parameters:
factor
- scales the maximum depth slope of the polygonunits
- scales an implementation-dependent constant that relates to the usable resolution of the depth bufferclamp
- the minimum or maximum polygon offset value
-
glSpecializeShader
public static void glSpecializeShader(int shader, java.nio.ByteBuffer pEntryPoint, java.nio.IntBuffer pConstantIndex, java.nio.IntBuffer pConstantValue) public static void glSpecializeShader(int shader, java.lang.CharSequence pEntryPoint, java.nio.IntBuffer pConstantIndex, java.nio.IntBuffer pConstantValue)
Specializes a shader created from a SPIR-V module.Shaders associated with SPIR-V modules must be specialized before they can be linked into a program object. It is not necessary to specialize the shader before it is attached to a program object. Once specialized, a shader may not be specialized again without first re-associating the original SPIR-V module with it, through
ShaderBinary
.Specialization does two things:
- Selects the name of the entry point, for that shader’s stage, from the SPIR-V module.
- Sets the values of all, or a subset of, the specialization constants in the SPIRV module.
On successful shader specialization, the compile status for shader is set to
TRUE
. On failure, the compile status for shader is set toFALSE
and additional information about the cause of the failure may be available in the shader compilation log.- Parameters:
shader
- the name of a shader object containing unspecialized SPIR-V as created from a successful call toShaderBinary
to which a SPIR-V module was passedpEntryPoint
- a pointer to a null-terminated UTF-8 string specifying the name of the entry point in the SPIR-V module to use for this shaderpConstantIndex
- is a pointer to an array ofnumSpecializationConstants
unsigned integers, each holding the index of a specialization constant in the SPIR-V module whose value to set.Specialization constants not referenced by
pConstantIndex
retain their default values as specified in the SPIR-V module.pConstantValue
- an entry inpConstantValue
is used to set the value of the specialization constant indexed by the corresponding entry inpConstantIndex
.Although this array is of unsigned integer, each entry is bitcast to the appropriate type for the module, and therefore, floating-point constants may be set by including their IEEE-754 bit representation in the
pConstantValue
array.
-
glMultiDrawArraysIndirectCount
public static void glMultiDrawArraysIndirectCount(int mode, int[] indirect, long drawcount, int maxdrawcount, int stride)
Array version of:MultiDrawArraysIndirectCount
-
glMultiDrawElementsIndirectCount
public static void glMultiDrawElementsIndirectCount(int mode, int type, int[] indirect, long drawcount, int maxdrawcount, int stride)
Array version of:MultiDrawElementsIndirectCount
-
glSpecializeShader
public static void glSpecializeShader(int shader, java.nio.ByteBuffer pEntryPoint, int[] pConstantIndex, int[] pConstantValue) public static void glSpecializeShader(int shader, java.lang.CharSequence pEntryPoint, int[] pConstantIndex, int[] pConstantValue)
Array version of:SpecializeShader
-
-