Class ARBMatrixPalette
This extension extends the abilities of ARBVertexBlend
to include a palette of modelview matrices. The n vertex units use a palette of m modelview
matrices. (Where n and m are constrained to implementation defined maxima.) Each vertex has a set of n indices into the palette, and a corresponding set
of n weights. Matrix indices can be changed for each vertex (between Begin
and End
).
When this extension is utilized, the enabled units transform each vertex by the modelview matrices specified by the vertices' respective indices. These results are subsequently scaled by the weights of the respective units and then summed to create the eyespace vertex.
A similar procedure is followed for normals. Normals, however, are transformed by the inverse transpose of the modelview matrix.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Accepted by thepname
parameter of GetFloatv.static final int
Accepted by thepname
parameters of GetIntegerv, GetFloatv, and GetDoublev.static final int
Accepted by thecap
parameters of EnableClientState and DisableClientState and by thepname
parameter of IsEnabled.static final int
Accepted by thepname
parameter of GetPointerv.static final int
Accepted by thepname
parameter of GetIntegerv.static final int
Accepted by thepname
parameter of GetIntegerv.static final int
Accepted by thepname
parameter of GetIntegerv.static final int
Accepted by thepname
parameters of GetFloatv, GetDoublev, and IsEnabled, by themode
parameter of MatrixMode, and by thecap
parameters of Enable and Disable.static final int
Accepted by thepname
parameters of GetIntegerv, GetFloatv, and GetDoublev.static final int
Accepted by thepname
parameters of GetIntegerv, GetFloatv, and GetDoublev. -
Method Summary
Modifier and TypeMethodDescriptionstatic void
glCurrentPaletteMatrixARB
(int index) Defines which of the palette's matrices is affected by subsequent matrix operations when the current matrix mode isMATRIX_PALETTE_ARB
,static void
glMatrixIndexPointerARB
(int size, int type, int stride, long pointer) static void
glMatrixIndexPointerARB
(int size, int type, int stride, ByteBuffer pointer) static void
glMatrixIndexPointerARB
(int size, int stride, ByteBuffer pointer) static void
glMatrixIndexPointerARB
(int size, int stride, IntBuffer pointer) static void
glMatrixIndexPointerARB
(int size, int stride, ShortBuffer pointer) static void
glMatrixIndexubvARB
(ByteBuffer indices) Byte version ofMatrixIndexuivARB
.static void
glMatrixIndexuivARB
(int[] indices) Array version of:MatrixIndexuivARB
static void
glMatrixIndexuivARB
(IntBuffer indices) Sets the current matrix indices.static void
glMatrixIndexusvARB
(short[] indices) Array version of:MatrixIndexusvARB
static void
glMatrixIndexusvARB
(ShortBuffer indices) Short version ofMatrixIndexuivARB
.static void
nglMatrixIndexPointerARB
(int size, int type, int stride, long pointer) Unsafe version of:MatrixIndexPointerARB
static void
nglMatrixIndexubvARB
(int size, long indices) Unsafe version of:MatrixIndexubvARB
static void
nglMatrixIndexuivARB
(int size, long indices) Unsafe version of:MatrixIndexuivARB
static void
nglMatrixIndexusvARB
(int size, long indices) Unsafe version of:MatrixIndexusvARB
-
Field Details
-
GL_MATRIX_PALETTE_ARB
public static final int GL_MATRIX_PALETTE_ARBAccepted by thepname
parameters of GetFloatv, GetDoublev, and IsEnabled, by themode
parameter of MatrixMode, and by thecap
parameters of Enable and Disable.- See Also:
-
GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB
public static final int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARBAccepted by thepname
parameters of GetIntegerv, GetFloatv, and GetDoublev.- See Also:
-
GL_MAX_PALETTE_MATRICES_ARB
public static final int GL_MAX_PALETTE_MATRICES_ARBAccepted by thepname
parameters of GetIntegerv, GetFloatv, and GetDoublev.- See Also:
-
GL_CURRENT_PALETTE_MATRIX_ARB
public static final int GL_CURRENT_PALETTE_MATRIX_ARBAccepted by thepname
parameters of GetIntegerv, GetFloatv, and GetDoublev.- See Also:
-
GL_MATRIX_INDEX_ARRAY_ARB
public static final int GL_MATRIX_INDEX_ARRAY_ARBAccepted by thecap
parameters of EnableClientState and DisableClientState and by thepname
parameter of IsEnabled.- See Also:
-
GL_CURRENT_MATRIX_INDEX_ARB
public static final int GL_CURRENT_MATRIX_INDEX_ARBAccepted by thepname
parameter of GetFloatv.- See Also:
-
GL_MATRIX_INDEX_ARRAY_SIZE_ARB
public static final int GL_MATRIX_INDEX_ARRAY_SIZE_ARBAccepted by thepname
parameter of GetIntegerv.- See Also:
-
GL_MATRIX_INDEX_ARRAY_TYPE_ARB
public static final int GL_MATRIX_INDEX_ARRAY_TYPE_ARBAccepted by thepname
parameter of GetIntegerv.- See Also:
-
GL_MATRIX_INDEX_ARRAY_STRIDE_ARB
public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_ARBAccepted by thepname
parameter of GetIntegerv.- See Also:
-
GL_MATRIX_INDEX_ARRAY_POINTER_ARB
public static final int GL_MATRIX_INDEX_ARRAY_POINTER_ARBAccepted by thepname
parameter of GetPointerv.- See Also:
-
-
Method Details
-
glCurrentPaletteMatrixARB
public static void glCurrentPaletteMatrixARB(int index) Defines which of the palette's matrices is affected by subsequent matrix operations when the current matrix mode isMATRIX_PALETTE_ARB
,- Parameters:
index
- the current matrix index. Must be a value between 0 andMAX_PALETTE_MATRICES_ARB
.
-
nglMatrixIndexuivARB
public static void nglMatrixIndexuivARB(int size, long indices) Unsafe version of:MatrixIndexuivARB
- Parameters:
size
- the number of index values to set. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.
-
glMatrixIndexuivARB
Sets the current matrix indices.- Parameters:
indices
- the matrix index values
-
nglMatrixIndexubvARB
public static void nglMatrixIndexubvARB(int size, long indices) Unsafe version of:MatrixIndexubvARB
- Parameters:
size
- the number of index values to set. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.
-
glMatrixIndexubvARB
Byte version ofMatrixIndexuivARB
.- Parameters:
indices
- the matrix index values
-
nglMatrixIndexusvARB
public static void nglMatrixIndexusvARB(int size, long indices) Unsafe version of:MatrixIndexusvARB
- Parameters:
size
- the number of index values to set. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.
-
glMatrixIndexusvARB
Short version ofMatrixIndexuivARB
.- Parameters:
indices
- the matrix index values
-
nglMatrixIndexPointerARB
public static void nglMatrixIndexPointerARB(int size, int type, int stride, long pointer) Unsafe version of:MatrixIndexPointerARB
- Parameters:
type
- the data type of the values stored in the array. One of:UNSIGNED_BYTE
UNSIGNED_SHORT
UNSIGNED_INT
-
glMatrixIndexPointerARB
- Parameters:
size
- the number of index values per vertex that are stored in the array. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.type
- the data type of the values stored in the array. One of:UNSIGNED_BYTE
UNSIGNED_SHORT
UNSIGNED_INT
stride
- the vertex stride in bytes. If specified as zero, then array elements are stored sequentiallypointer
- the matrix index data
-
glMatrixIndexPointerARB
public static void glMatrixIndexPointerARB(int size, int type, int stride, long pointer) - Parameters:
size
- the number of index values per vertex that are stored in the array. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.type
- the data type of the values stored in the array. One of:UNSIGNED_BYTE
UNSIGNED_SHORT
UNSIGNED_INT
stride
- the vertex stride in bytes. If specified as zero, then array elements are stored sequentiallypointer
- the matrix index data
-
glMatrixIndexPointerARB
- Parameters:
size
- the number of index values per vertex that are stored in the array. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.stride
- the vertex stride in bytes. If specified as zero, then array elements are stored sequentiallypointer
- the matrix index data
-
glMatrixIndexPointerARB
- Parameters:
size
- the number of index values per vertex that are stored in the array. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.stride
- the vertex stride in bytes. If specified as zero, then array elements are stored sequentiallypointer
- the matrix index data
-
glMatrixIndexPointerARB
- Parameters:
size
- the number of index values per vertex that are stored in the array. Must be a value between 1 andMAX_VERTEX_UNITS_ARB
.stride
- the vertex stride in bytes. If specified as zero, then array elements are stored sequentiallypointer
- the matrix index data
-
glMatrixIndexuivARB
public static void glMatrixIndexuivARB(int[] indices) Array version of:MatrixIndexuivARB
-
glMatrixIndexusvARB
public static void glMatrixIndexusvARB(short[] indices) Array version of:MatrixIndexusvARB
-