Функция glIndexPointer
Функция glIndexPointer определяет массив цветовых индексов.
Синтаксис
void WINAPI glIndexPointer(
GLenum type,
GLsizei stride,
const GLvoid *pointer
);
Параметры
-
type
-
Тип данных каждого цветового индекса в массиве с использованием следующих символьных констант: GL_SHORT, GL_INT, GL_FLOAT GL_DOUBLE.
-
Шаг
-
Смещение в байтах между последовательными цветными индексами. Если шаг равен нулю, цветовые индексы плотно упаковываются в массив.
-
Указатель
-
Указатель на первый цветной индекс в массиве.
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
Следующие коды ошибок могут быть получены функцией glGetError .
Имя | Значение |
---|---|
|
Type не является допустимым значением. |
|
шаг илисчетчик был отрицательным. |
Комментарии
Функция glIndexPointer указывает расположение и данные массива цветовых индексов, используемых при отрисовке. Параметр type задает тип данных каждого индекса цвета, а шаг определяет смещение байтов от одного индекса цвета к другому, позволяя упаковывать вершины и атрибуты в одном массиве или хранить их в отдельных массивах. В некоторых реализациях хранение вершин и атрибутов в одном массиве может быть более эффективным, чем использование отдельных массивов. Дополнительные сведения см. в разделе glInterleavedArrays.
Массив цветовых индексов включается при указании константы GL_INDEX_ARRAY с помощью glEnableClientState. Если этот параметр включен, glDrawArrays и glArrayElement используют массив цветовых индексов. По умолчанию массив цветовых индексов отключен.
Невозможно включить glIndexPointer в отображаемые списки.
При указании массива цветных индексов с помощью glIndexPointer значения всех параметров массива цветовых индексов функции сохраняются в клиентском состоянии, а статические элементы массива могут кэшироваться. Так как параметры массива цветовых индексов находятся в состоянии клиента, их значения не сохраняются и не восстанавливаются с помощью glPushAttrib и glPopAttrib.
Хотя при вызове glIndexPointer в парах glBegin и glEnd ошибка не возникает, результаты не определены.
Следующие функции извлекают сведения, связанные с glIndexPointer:
glIsEnabled с аргументом GL_INDEX_ARRAY
glGet с аргументом GL_INDEX_ARRAY_STRIDE
glGet с аргументом GL_INDEX_ARRAY_COUNT
glGet с аргументом GL_INDEX_ARRAY_TYPE
glGet с аргументом GL_INDEX_ARRAY_SIZE
glGetPointerv с аргументом GL_INDEX_ARRAY_POINTER
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|