glIndexPointer 函式
glIndexPointer 函式會定義色彩索引的陣列。
語法
void WINAPI glIndexPointer(
GLenum type,
GLsizei stride,
const GLvoid *pointer
);
參數
-
type
-
陣列中每個色彩索引的資料類型,使用下列符號常數:GL_SHORT、GL_INT、GL_FLOAT GL_DOUBLE。
-
大步
-
連續色彩索引之間的位元組位移。 當 stride 為零時,色彩索引會緊密封裝在陣列中。
-
指標
-
陣列中第一個色彩索引的指標。
傳回值
此函式不會傳回值。
錯誤碼
glGetError函式可以擷取下列錯誤碼。
名稱 | 意義 |
---|---|
|
類型 不是可接受的值。 |
|
stride 或 count 為負數。 |
備註
glIndexPointer函式會指定要在轉譯時使用之色彩索引陣列的位置和資料。 type參數會指定每個色彩索引的資料類型,而跨距會決定從一個色彩索引到下一個色彩索引的位元組位移,以在單一陣列或個別陣列中儲存頂點和屬性。 在某些實作中,將頂點和屬性儲存在單一陣列可能會比使用個別陣列更有效率。 如需詳細資訊,請參閱 glInterleavedArrays。
當您使用 glEnableClientState指定GL_INDEX_ARRAY常數時,就會啟用色彩索引陣列。 啟用時, glDrawArrays 和 glArrayElement 會使用色彩索引陣列。 預設會停用色彩索引陣列。
您無法在顯示清單中包含 glIndexPointer 。
當您使用 glIndexPointer指定色彩索引陣列時,所有函式色彩索引陣列參數的值都會儲存在用戶端狀態中,而且可以快取靜態陣列元素。 因為色彩索引陣列參數是用戶端狀態,所以 不會由 glPushAttrib 和 glPopAttrib儲存或還原其值。
雖然當您在glBegin和glEnd配對內呼叫glIndexPointer時不會產生任何錯誤,但不會定義結果。
下列函式會擷 取 glIndexPointer的相關資訊:
glIsEnabled with argument GL_INDEX_ARRAY
glGet with argument GL_INDEX_ARRAY_STRIDE
glGet with argument GL_INDEX_ARRAY_COUNT
glGet with argument GL_INDEX_ARRAY_TYPE
glGet with argument GL_INDEX_ARRAY_SIZE
具有引數的glGetPointerv GL_INDEX_ARRAY_POINTER
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限桌面應用程式] |
標頭 |
|
程式庫 |
|
DLL |
|