Top Description Fields Constructors Methods
org.lwjgl.opengles

public Class EXTMapBufferRange

extends Object
Class Inheritance
Imports
javax.annotation.*, java.nio.*, org.lwjgl.system.*

Native bindings to the EXT_map_buffer_range extension.

EXT_map_buffer_range expands the buffer object API to allow greater performance when a client application only needs to write to a sub-range of a buffer object. To that end, this extension introduces two new buffer object features: non-serialized buffer modification and explicit sub-range flushing for mapped buffer objects.

OpenGL requires that commands occur in a FIFO manner meaning that any changes to buffer objects either block until the data has been processed by the OpenGL pipeline or else create extra copies to avoid such a block. By providing a method to asynchronously modify buffer object data, an application is then able to manage the synchronization points themselves and modify ranges of data contained by a buffer object even though OpenGL might still be using other parts of it.

This extension also provides a method for explicitly flushing ranges of a mapped buffer object so OpenGL does not have to assume that the entire range may have been modified. Further, it allows the application to more precisely specify its intent with respect to reading, writing, and whether the previous contents of a mapped range of interest need be preserved prior to modification.

Requires GLES 2.0 and OES_mapbuffer.

Field Summary

Modifier and TypeField and Description
public static final int
GL_MAP_FLUSH_EXPLICIT_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

public static final int
GL_MAP_INVALIDATE_BUFFER_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

public static final int
GL_MAP_INVALIDATE_RANGE_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

public static final int
GL_MAP_READ_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

public static final int
GL_MAP_UNSYNCHRONIZED_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

public static final int
GL_MAP_WRITE_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static native void
glFlushMappedBufferRangeEXT(int target, long offset, long length)

public static ByteBuffer
glMapBufferRangeEXT(int target, long offset, long length, int access)

public static ByteBuffer
glMapBufferRangeEXT(int target, long offset, long length, int access, ByteBuffer old_buffer)

public static native long
nglMapBufferRangeEXT(int target, long offset, long length, int access)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

GL_MAP_FLUSH_EXPLICIT_BIT_EXTback to summary
public static final int GL_MAP_FLUSH_EXPLICIT_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

GL_MAP_INVALIDATE_BUFFER_BIT_EXTback to summary
public static final int GL_MAP_INVALIDATE_BUFFER_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

GL_MAP_INVALIDATE_RANGE_BIT_EXTback to summary
public static final int GL_MAP_INVALIDATE_RANGE_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

GL_MAP_READ_BIT_EXTback to summary
public static final int GL_MAP_READ_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

GL_MAP_UNSYNCHRONIZED_BIT_EXTback to summary
public static final int GL_MAP_UNSYNCHRONIZED_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

GL_MAP_WRITE_BIT_EXTback to summary
public static final int GL_MAP_WRITE_BIT_EXT

Accepted by the access parameter of MapBufferRangeEXT.

Constructor Detail

EXTMapBufferRangeback to summary
protected EXTMapBufferRange()

Method Detail

glFlushMappedBufferRangeEXTback to summary
public static native void glFlushMappedBufferRangeEXT(int target, long offset, long length)
glMapBufferRangeEXTback to summary
public static ByteBuffer glMapBufferRangeEXT(int target, long offset, long length, int access)
Annotations
@Nullable
@NativeType:void *
glMapBufferRangeEXTback to summary
public static ByteBuffer glMapBufferRangeEXT(int target, long offset, long length, int access, ByteBuffer old_buffer)
Annotations
@Nullable
@NativeType:void *
nglMapBufferRangeEXTback to summary
public static native long nglMapBufferRangeEXT(int target, long offset, long length, int access)