Package arc.graphics.gl
Class IndexArray
java.lang.Object
arc.graphics.gl.IndexArray
- All Implemented Interfaces:
IndexData
,Disposable
-
Constructor Summary
ConstructorDescriptionIndexArray
(int maxIndices) Creates a new IndexArray to be used with vertex arrays. -
Method Summary
Modifier and TypeMethodDescriptionvoid
bind()
Binds this IndexArray for rendering with glDrawElements.buffer()
Returns the underlying ShortBuffer.void
dispose()
Disposes this IndexArray and all its associated OpenGL resources.int
max()
void
set
(short[] indices, int offset, int count) Sets the indices of this IndexArray, discarding the old indices.void
set
(ShortBuffer indices) Copies the specified indices to the indices of this IndexBufferObject, discarding the old indices.int
size()
void
unbind()
Unbinds this IndexArray.void
update
(int targetOffset, short[] indices, int offset, int count) Update (a portion of) the indices.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface arc.util.Disposable
isDisposed
-
Constructor Details
-
IndexArray
public IndexArray(int maxIndices) Creates a new IndexArray to be used with vertex arrays.- Parameters:
maxIndices
- the maximum number of indices this buffer can hold
-
-
Method Details
-
size
public int size() -
max
public int max() -
set
public void set(short[] indices, int offset, int count) -
set
Description copied from interface:IndexData
Copies the specified indices to the indices of this IndexBufferObject, discarding the old indices. Copying start at the currentBuffer.position()
of the specified buffer and copied theBuffer.remaining()
amount of indices. This can be called in between calls toIndexData.bind()
andIndexData.unbind()
. The index data will be updated instantly. -
update
public void update(int targetOffset, short[] indices, int offset, int count) Description copied from interface:IndexData
Update (a portion of) the indices. -
buffer
Returns the underlying ShortBuffer. If you modify the buffer contents they wil be uploaded on the call to
bind()
. If you need immediate uploading useset(short[], int, int)
. -
bind
public void bind()Binds this IndexArray for rendering with glDrawElements. -
unbind
public void unbind()Unbinds this IndexArray. -
dispose
public void dispose()Disposes this IndexArray and all its associated OpenGL resources.- Specified by:
dispose
in interfaceDisposable
- Specified by:
dispose
in interfaceIndexData
-