Функция glTexCoordPointer
Функция glTexCoordPointer определяет массив координат текстуры.
Синтаксис
void WINAPI glTexCoordPointer(
GLint size,
GLenum type,
GLsizei stride,
const GLvoid *pointer
);
Параметры
-
size
-
Количество координат на элемент массива. Значение размера должно быть равно 1, 2, 3 или 4.
-
type
-
Тип данных каждой координаты текстуры в массиве с использованием следующих символьных констант: GL_SHORT, GL_INT, GL_FLOAT и GL_DOUBLE.
-
Шаг
-
Смещение байтов между последовательными элементами массива. Если шаг равен нулю, элементы массива плотно упаковываются в массив.
-
Указатель
-
Указатель на первую координату первого элемента в массиве.
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
Следующие коды ошибок могут быть получены функцией glGetError .
Имя | Значение |
---|---|
|
Тип не является допустимым значением. |
|
размер не был 1, 2, 3 или 4. |
|
шаг был отрицательным. |
Комментарии
Функция glTexCoordPointer указывает расположение и данные массива координат текстуры для использования при отрисовке. Параметр size указывает количество координат, используемых для каждого элемента массива. Параметр type указывает тип данных каждой координаты текстуры. Параметр stride определяет смещение байтов от одного элемента массива к другому, позволяя упаковывать вершины и атрибуты в одном массиве или хранить их в отдельных массивах. В некоторых реализациях хранение вершин и атрибутов в одном массиве может быть более эффективным, чем использование отдельных массивов. Дополнительные сведения см. в разделе glInterleavedArrays. При указании массива координат текстуры сохраняется состояние размера, типа, шага и указателя на стороне клиента.
Массив координат текстуры включается при указании константы GL_TEXTURE_COORD_ARRAY с помощью glEnableClientState. Если этот параметр включен, glDrawArrays, glDrawElements и glArrayElement используют массив координат текстуры. По умолчанию массив координат текстуры отключен.
В списки отображения нельзя включить glTexCoordPointer .
При указании массива координат текстуры с помощью glTexCoordPointer значения всех параметров массива координат текстуры функции сохраняются в клиентском состоянии, а статические элементы массива можно кэшировать. Так как параметры массива координат текстуры находятся в состоянии клиента, их значения не сохраняются и не восстанавливаются с помощью glPushAttrib и glPopAttrib.
Хотя при вызове glTexCoordPointer в парах glBegin и glEnd ошибка не возникает, результаты не определены.
Следующие функции извлекают сведения, связанные с glTexCoordPointer:
glIsEnabled с аргументом GL_TEXTURE_COORD_ARRAY
glGet с аргументом GL_TEXTURE_COORD_ARRAY_SIZE
glGet с аргументом GL_TEXTURE_COORD_ARRAY_STRIDE
glGet с аргументом GL_TEXTURE_COORD_ARRAY_COUNT
glGet с GL_TEXTURE_COORD_ARRAY_TYPE аргументов
glGetPointerv с аргументом GL_TEXTURE_COORD_ARRAY_POINTER
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|