Функция glTexParameterf
Задает параметры текстуры.
Синтаксис
void WINAPI glTexParameterf(
GLenum target,
GLenum pname,
GLfloat param
);
Параметры
-
target
-
Целевая текстура, которая должна быть либо GL_TEXTURE_1D, либо GL_TEXTURE_2D.
-
pname
-
Символьное имя одного параметра текстуры с одним значением. Следующие символы принимаются в pname.
Значение Значение - GL_TEXTURE_MIN_FILTER
Функция миниификации текстур используется всякий раз, когда текстурируемый пиксель сопоставляется с областью, превышающей один элемент текстуры. Существует шесть определенных функций минификации. Два из них используют ближайший один или ближайшие четыре элемента текстуры для вычисления значения текстуры. Остальные четыре используют MIP-карты.
MIP-карта — это упорядоченный набор массивов, представляющих одно и то же изображение с постепенно более низким разрешением. Если текстура имеет размеры 2nx2m , есть max(n, m) + 1 MIP-карты. Первая MIP-карта — это исходная текстура с размерами 2nx2м. Каждая последующая MIP-карта имеет размеры 2k1x2l1, где 2kx 2l являются измерениями предыдущей MIP-карты, пока k = 0 или l = 0. На этом этапе последующие MIP-карты имеют размерность 1x2l1 или 2k1x1 до окончательной MIP-карты, которая имеет измерение 1x1. MIP-карты определяются с помощью glTexImage1D или glTexImage2D с аргументом уровня детализации, указывающим порядок MIP-карт. Уровень 0 — исходная текстура; level bold max(n, m) — это окончательная MIP-карта 1x1.- GL_TEXTURE_MAG_FILTER
Функция увеличения текстуры используется, когда текстурируемый пиксель сопоставляется с областью, меньшей или равной одному элементу текстуры. Функция увеличения текстуры задает значение GL_NEAREST или GL_LINEAR. - GL_TEXTURE_WRAP_S
Задает параметру wrap для координат текстуры значение GL_CLAMP или GL_REPEAT. GL_CLAMP привязывает координаты к диапазону [0,1] и полезен для предотвращения упаковки артефактов при сопоставлении одного изображения с объектом. GL_REPEAT приводит к тому, что целочисленная часть координаты игнорируется; OpenGL использует только дробную часть, тем самым создавая повторяющийся шаблон. Доступ к элементам текстуры границы осуществляется только в том случае, если для обтекания задано значение GL_CLAMP. Изначально для GL_TEXTURE_WRAP_S задано значение GL_REPEAT. - GL_TEXTURE_WRAP_T
Задает параметру wrap для координаты текстуры t значение GL_CLAMP или GL_REPEAT. См. обсуждение в разделе GL_TEXTURE_WRAP_S. Изначально для GL_TEXTURE_WRAP_T задано значение GL_REPEAT -
param
-
Значение pname.
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
Следующие коды ошибок могут быть получены функцией glGetError .
Имя | Значение |
---|---|
|
target или pname не является одним из принятых определенных значений, или если параметр должен иметь определенное значение константы (на основе значения pname) и не имеет значения . |
|
Функция была вызвана между вызовом glBegin и соответствующим вызовом glEnd. |
Комментарии
Сопоставление текстур — это метод, который применяет изображение к поверхности объекта, как если бы изображение было наклейкой или целлофановой сжатием. Изображение создается в пространстве текстуры с системой координат (s, t). Текстура — это одномерное или двумерное изображение и набор параметров, определяющих, как образцы извлекаются из изображения.
Функция glTexParameter присваивает значение или значения в параметре текстуры, указанному как pname. Параметр target определяет целевую текстуру GL_TEXTURE_1D или GL_TEXTURE_2D.
По мере того как в процессе минификации выполняется выборка большего числа элементов текстуры, будет очевидно меньше артефактов псевдонимов. Хотя функции GL_NEAREST и GL_LINEAR минификации могут выполняться быстрее, чем остальные четыре, они выборка только одного или четырех элементов текстуры для определения значения текстуры отрисовываемого пикселя и могут создавать муаровые узоры или неровные переходы. Значение по умолчанию GL_TEXTURE_MIN_FILTER — GL_NEAREST_MIPMAP_LINEAR.
Предположим, что включено форматирование (путем вызова glEnable с аргументом GL_TEXTURE_1D или GL_TEXTURE_2D), а для GL_TEXTURE_MIN_FILTER задана одна из функций, которым требуется MIP-карта. Если размеры изображений текстур, определенных в данный момент (с предыдущими вызовами glTexImage1D или glTexImage2D), не соответствуют правильной последовательности для MIP-карт, или определено меньше изображений текстуры, чем требуется, или набор изображений текстуры имеет разное количество компонентов текстуры, то сопоставление текстуры было как будто отключено. Линейная фильтрация обращается к четырем ближайшим элементам текстуры только в двухуровневых текстурах. В 1-D текстурах линейная фильтрация обращается к двум ближайшим элементам текстуры. Следующая функция извлекает сведения, связанные с glTexParameterf, glTexParameteri, glTexParameterfv и glTexParameteriv.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|