Package com.jme3.renderer.lwjgl
Class LwjglGLExt
java.lang.Object
com.jme3.renderer.lwjgl.LwjglGLExt
- All Implemented Interfaces:
GLExt
-
Field Summary
Fields inherited from interface com.jme3.renderer.opengl.GLExt
GL_ALREADY_SIGNALED, GL_BUFFER, GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT, GL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGB8_ETC2, GL_COMPRESSED_RGBA_BPTC_UNORM, GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM, GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, GL_COMPRESSED_SRGB_S3TC_DXT1_EXT, GL_CONDITION_SATISFIED, GL_DEBUG_SOURCE_API, GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_SOURCE_OTHER, GL_DEBUG_SOURCE_SHADER_COMPILER, GL_DEBUG_SOURCE_THIRD_PARTY, GL_DEBUG_SOURCE_WINDOW_SYSTEM, GL_DEPTH_COMPONENT32F, GL_DEPTH_STENCIL_EXT, GL_DEPTH24_STENCIL8_EXT, GL_DISPLAY_LIST, GL_ETC1_RGB8_OES, GL_FRAMEBUFFER_SRGB_CAPABLE_EXT, GL_FRAMEBUFFER_SRGB_EXT, GL_HALF_FLOAT_ARB, GL_HALF_FLOAT_OES, GL_LUMINANCE_ALPHA16F_ARB, GL_LUMINANCE16F_ARB, GL_LUMINANCE32F_ARB, GL_MAX_COLOR_TEXTURE_SAMPLES, GL_MAX_DEPTH_TEXTURE_SAMPLES, GL_MAX_DRAW_BUFFERS_ARB, GL_MAX_SAMPLES_EXT, GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, GL_MULTISAMPLE_ARB, GL_NUM_PROGRAM_BINARY_FORMATS, GL_PIXEL_PACK_BUFFER_ARB, GL_PIXEL_UNPACK_BUFFER_ARB, GL_PROGRAM, GL_PROGRAM_PIPELINE, GL_QUERY, GL_R11F_G11F_B10F_EXT, GL_RGB16F_ARB, GL_RGB32F_ARB, GL_RGB9_E5_EXT, GL_RGBA16F_ARB, GL_RGBA32F_ARB, GL_RGBA8, GL_SAMPLE_ALPHA_TO_COVERAGE_ARB, GL_SAMPLE_BUFFERS_ARB, GL_SAMPLE_POSITION, GL_SAMPLER, GL_SAMPLES_ARB, GL_SHADER, GL_SLUMINANCE8_ALPHA8_EXT, GL_SLUMINANCE8_EXT, GL_SRGB8_ALPHA8_EXT, GL_SRGB8_EXT, GL_SYNC_FLUSH_COMMANDS_BIT, GL_SYNC_GPU_COMMANDS_COMPLETE, GL_TEXTURE_2D_ARRAY_EXT, GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_2D_MULTISAMPLE_ARRAY, GL_TEXTURE_CUBE_MAP_SEAMLESS, GL_TEXTURE_MAX_ANISOTROPY_EXT, GL_TIMEOUT_EXPIRED, GL_UNSIGNED_INT_10F_11F_11F_REV_EXT, GL_UNSIGNED_INT_24_8_EXT, GL_UNSIGNED_INT_5_9_9_9_REV_EXT, GL_WAIT_FAILED
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
glBufferData
(int target, IntBuffer data, int usage) void
glBufferSubData
(int target, long offset, IntBuffer data) int
glClientWaitSync
(Object sync, int flags, long timeout) Causes the client to block and wait for a sync object to become signaled.void
glDeleteSync
(Object sync) Deletes a sync object.void
glDrawArraysInstancedARB
(int mode, int first, int count, int primcount) Draw multiple instances of a range of elements.void
glDrawBuffers
(IntBuffer bufs) void
glDrawElementsInstancedARB
(int mode, int indicesCount, int type, long indicesBufferOffset, int primcount) Draws multiple instances of a set of elements.glFenceSync
(int condition, int flags) Creates a new sync object and inserts it into the GL command stream.void
glGetMultisample
(int pname, int index, FloatBuffer val) Retrieves the location of a sample.void
glTexImage2DMultisample
(int target, int samples, int internalformat, int width, int height, boolean fixedSampleLocations) Establishes the data storage, format, dimensions, and number of samples of a 2D multisample texture's image.void
glVertexAttribDivisorARB
(int index, int divisor) Modifies the rate at which generic vertex attributes advance when rendering multiple instances of primitives in a single draw call.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.jme3.renderer.opengl.GLExt
glObjectLabel, glPopDebugGroup, glPushDebugGroup
-
Constructor Details
-
LwjglGLExt
public LwjglGLExt()
-
-
Method Details
-
glBufferData
Description copied from interface:GLExt
Creates and initializes a buffer object's data store.usage
is a hint to the GL implementation as to how a buffer object's data store will be accessed. This enables the GL implementation to make more intelligent decisions that may significantly impact buffer object performance. It does not, however, constrain the actual usage of the data store.usage
can be broken down into two parts: first, the frequency of access (modification and usage), and second, the nature of that access. The frequency of access may be one of these:- STREAM - The data store contents will be modified once and used at most a few times.
- STATIC - The data store contents will be modified once and used many times.
- DYNAMIC - The data store contents will be modified repeatedly and used many times.
The nature of access may be one of these:
- DRAW - The data store contents are modified by the application, and used as the source for GL drawing and image specification commands.
- READ - The data store contents are modified by reading data from the GL, and used to return that data when queried by the application.
- COPY - The data store contents are modified by reading data from the GL, and used as the source for GL drawing and image specification commands.
- Specified by:
glBufferData
in interfaceGLExt
- Parameters:
target
- the target buffer object.data
- a pointer to data that will be copied into the data store for initialization, orNULL
if no data is to be copied.usage
- the expected usage pattern of the data store.
-
glBufferSubData
Description copied from interface:GLExt
Updates a subset of a buffer object's data store.
- Specified by:
glBufferSubData
in interfaceGLExt
- Parameters:
target
- the target buffer object.offset
- the offset into the buffer object's data store where data replacement will begin, measured in bytes.data
- a pointer to the new data that will be copied into the data store.
-
glDrawArraysInstancedARB
public void glDrawArraysInstancedARB(int mode, int first, int count, int primcount) Description copied from interface:GLExt
Draw multiple instances of a range of elements.- Specified by:
glDrawArraysInstancedARB
in interfaceGLExt
- Parameters:
mode
- the kind of primitives to render.first
- the starting index in the enabled arrays.count
- the number of indices to be rendered.primcount
- the number of instances of the specified range of indices to be rendered.
-
glDrawBuffers
Description copied from interface:GLExt
Specifies a list of color buffers to be drawn into.
- Specified by:
glDrawBuffers
in interfaceGLExt
- Parameters:
bufs
- an array of symbolic constants specifying the buffers into which fragment colors or data values will be written.
-
glDrawElementsInstancedARB
public void glDrawElementsInstancedARB(int mode, int indicesCount, int type, long indicesBufferOffset, int primcount) Description copied from interface:GLExt
Draws multiple instances of a set of elements.- Specified by:
glDrawElementsInstancedARB
in interfaceGLExt
- Parameters:
mode
- the kind of primitives to render.indicesCount
- the number of elements to be rendered.type
- the type of the values inindices
.indicesBufferOffset
- a pointer to the location where the indices are stored.primcount
- the number of instances of the specified range of indices to be rendered.
-
glGetMultisample
Description copied from interface:GLExt
Retrieves the location of a sample.- Specified by:
glGetMultisample
in interfaceGLExt
- Parameters:
pname
- the sample parameter name.index
- the index of the sample whose position to query.val
- an array to receive the position of the sample.
-
glTexImage2DMultisample
public void glTexImage2DMultisample(int target, int samples, int internalformat, int width, int height, boolean fixedSampleLocations) Description copied from interface:GLExt
Establishes the data storage, format, dimensions, and number of samples of a 2D multisample texture's image.- Specified by:
glTexImage2DMultisample
in interfaceGLExt
- Parameters:
target
- the target of the operation.samples
- the number of samples in the multisample texture's imageinternalformat
- the internal format to be used to store the multisample texture's image.internalformat
must specify a color-renderable, depth-renderable, or stencil-renderable format.width
- the width of the multisample texture's image, in texelsheight
- the height of the multisample texture's image, in texelsfixedSampleLocations
- whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image
-
glVertexAttribDivisorARB
public void glVertexAttribDivisorARB(int index, int divisor) Description copied from interface:GLExt
Modifies the rate at which generic vertex attributes advance when rendering multiple instances of primitives in a single draw call. Ifdivisor
is zero, the attribute at slotindex
advances once per vertex. Ifdivisor
is non-zero, the attribute advances once perdivisor
instances of the set(s) of vertices being rendered. An attribute is referred to asinstanced
if itsdivisor
value is non-zero.- Specified by:
glVertexAttribDivisorARB
in interfaceGLExt
- Parameters:
index
- the attribute index.divisor
- the divisor value.
-
glFenceSync
Description copied from interface:GLExt
Creates a new sync object and inserts it into the GL command stream.- Specified by:
glFenceSync
in interfaceGLExt
- Parameters:
condition
- the condition that must be met to set the sync object's state to signaled.flags
- a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined for this operation andflags
must be zero.- Returns:
- a new instance
-
glClientWaitSync
Description copied from interface:GLExt
Causes the client to block and wait for a sync object to become signaled. Ifsync
is signaled whenglClientWaitSync
is called,glClientWaitSync
returns immediately, otherwise it will block and wait for up to timeout nanoseconds forsync
to become signaled.- Specified by:
glClientWaitSync
in interfaceGLExt
- Parameters:
sync
- the sync object whose status to wait on.flags
- a bitfield controlling the command flushing behavior.timeout
- the timeout, specified in nanoseconds, for which the implementation should wait forsync
to become signaled.- Returns:
- the status is one of ALREADY_SIGNALED, TIMEOUT_EXPIRED, CONDITION_SATISFIED or WAIT_FAILED.
-
glDeleteSync
Description copied from interface:GLExt
Deletes a sync object.- Specified by:
glDeleteSync
in interfaceGLExt
- Parameters:
sync
- the sync object to be deleted.
-