Функция glBindTexture
Функция glBindTexture позволяет создать именованную текстуру, привязанную к целевому объекту текстуры.
Синтаксис
void WINAPI glBindTexture(
GLenum target,
GLuint texture
);
Параметры
-
target
-
Целевой объект, к которому привязана текстура. Значение должно быть GL_TEXTURE_1D или GL_TEXTURE_2D.
-
Текстуры
-
Имя текстуры; Имя текстуры в настоящее время не может использоваться.
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
Следующие коды ошибок могут быть получены функцией glGetError .
Имя | Значение |
---|---|
|
Целевой объект параметра не является допустимым значением. |
|
Текстура параметра не имеет той же размерности, что и целевой объект, или функция была вызвана между вызовом glBegin и соответствующим вызовом glEnd. |
Комментарии
Функция glBindTexture позволяет создать именованную текстуру. Вызов glBindTexture с целевым значением GL_TEXTURE_1D или GL_TEXTURE_2D, а для текстуры — именем созданной текстуры, привязывает имя текстуры к соответствующему целевому объекту текстуры. Когда текстура привязана к целевому объекту, предыдущая привязка для этого целевого объекта больше не действует.
Имена текстур — это целые числа без знака с нулевым значением, зарезервированным для представления текстуры по умолчанию для каждого целевого объекта текстуры. Имена текстур и соответствующее содержимое текстуры являются локальными для общего пространства списков текущего контекста отрисовки OpenGL; два контекста отрисовки используют имена текстур только в том случае, если они также используют отображаемые списки. Вы можете создать набор новых имен текстур с помощью glGenTextures.
При первой привязке текстуры предполагается размерность целевого объекта текстуры; текстура, привязанная к GL_TEXTURE_1D, становится одномерной, а текстура, привязанная к GL_TEXTURE_2D, становится двухмерной. Операции, выполняемые с целевым объектом текстуры, также влияют на текстуру, привязанную к целевому объекту. При запросе целевого объекта текстуры возвращается состояние привязанной к ней текстуры. Целевые объекты текстур становятся псевдонимами для текстур, которые в настоящее время привязаны к ним.
При привязке текстуры с помощью glBindTexture привязка остается активной, пока другая текстура не будет привязана к тому же целевому объекту или не будет удалена связанная текстура с помощью функции glDeleteTextures . После создания именованной текстуры ее можно привязать к целевому объекту текстуры с той же размерностью, что и требуется.
Обычно использовать glBindTexture для привязки существующей именованной текстуры к одному из целевых объектов текстуры гораздо быстрее, чем перезагрузить изображение текстуры с помощью glTexImage1D или glTexImage2D. Для дополнительного управления производительностью форматирования используйте glPrioritizeTextures.
Вызовы glBindTexture можно включить в отображаемые списки.
Примечание
Функция glBindTexture доступна только в OpenGL версии 1.1 или более поздней.
Следующие функции извлекают сведения, связанные с glBindTexture:
- glGet с аргументом GL_TEXTURE_1D_BINDING
glGet с аргументом GL_TEXTURE_2D_BINDING
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|