Функции OpenGL для задания текстурного изображения

В OpenGL для загрузки текущего текстурного изображения в видео память используются следующие функции: одна для одномерного изображения и другая для двумерного.

void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels),

void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels),

где target – для первой формы функции параметр должен быть установлен в GL_TEXTURE_1D; для второй в GL_TEXTURE_2D;

level – номер уровня детализации. Уровень 0 является уровнем базового изображения. Уровень n – это n -й mipmap уровень уменьшенного изображения;

internalformat – число компонентов цвета в текстуре. Должно быть 1, 2, 3, или 4, или одной из символических констант: GL_RGB, GL_RGBA и т.п. При значении 1 используется только красный компонент; при значении 2 – красный и альфа, при значении 3 – красный, зеленый и синий и при значении 4 – все четыре компонента цвета;

width – ширина текстурного изображения, должна быть  для некоторого целого n;

height – высота текстурного изображения, должна быть  для некоторого целого m;

border – ширина рамки текстуры, которая устанавливается в 0 или 1;

format – формат пиксельных данных pixels может принимать значения: GL_RGB, GL_RGBA и т.п.;

type – тип пиксельных данных массива pixels может принимать следующие значения: GL_UNSIGNED_BYTE, GL_BYTE, GL_BITMAP, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT и GL_FLOAT;

pixels – указатель на данные изображения в оперативной памяти.

Функция glEnable с параметром GL_TEXTURE_1D (GL_TEXTURE_2D) включает наложение одномерной (двумерной) текстуры. Функция glDisable с теми же параметрами – отключает.

Примечание. Размеры изображения должны быть кратны степени двойки.

 

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: