Compartilhar via


Função glTexParameteri

Define parâmetros de textura.

Sintaxe

void WINAPI glTexParameteri(
   GLenum target,
   GLenum pname,
   GLint  param
);

Parâmetros

destino

A textura de destino, que deve ser GL_TEXTURE_1D ou GL_TEXTURE_2D.

Pname

O nome simbólico de um único parâmetro de textura com valor. Os símbolos a seguir são aceitos em pname.

Valor Significado
GL_TEXTURE_MIN_FILTER
A função de minificação de textura é usada sempre que o pixel que está sendo texturizado é mapeado para uma área maior que um elemento de textura. Há seis funções de minificação definidas. Dois deles usam os quatro elementos de textura mais próximos para calcular o valor da textura. Os outros quatro usam mipmaps.
Um mipmap é um conjunto ordenado de matrizes que representam a mesma imagem em resoluções progressivamente menores. Se a textura tiver dimensões de 2nx2m , haverá max(n, m) + 1 mipmaps. O primeiro mipmap é a textura original, com dimensões de 2nx2m. Cada mipmap subsequente tem dimensões 2k1x2l1, em que 2kx2l são as dimensões do mipmap anterior, até k = 0 ou l = 0. Nesse ponto, mipmaps subsequentes têm dimensão 1x2l1 ou 2k1x1 até o mipmap final, que tem dimensão 1x1. Os mipmaps são definidos usando glTexImage1D ou glTexImage2D com o argumento level-of-detail que indica a ordem dos mipmaps. Nível 0 é a textura original; level bold max(n, m) é o mipmap 1x1 final.
GL_TEXTURE_MAG_FILTER
A função de ampliação de textura é usada quando o pixel que está sendo texturizado é mapeado para uma área menor ou igual a um elemento de textura. Ele define a função de ampliação de textura como GL_NEAREST ou GL_LINEAR.
GL_TEXTURE_WRAP_S
Define o parâmetro wrap para coordenadas de textura como GL_CLAMP ou GL_REPEAT. GL_CLAMP faz com que as coordenadas de s sejam presas ao intervalo [0,1] e é útil para evitar a disposição de artefatos ao mapear uma única imagem em um objeto. GL_REPEAT faz com que a parte inteira da coordenada de s seja ignorada; O OpenGL usa apenas a parte fracionária, criando assim um padrão de repetição. Os elementos de textura de borda serão acessados somente se o encapsulamento estiver definido como GL_CLAMP. Inicialmente, GL_TEXTURE_WRAP_S é definido como GL_REPEAT.
GL_TEXTURE_WRAP_T
Define o parâmetro wrap para a coordenada de textura t como GL_CLAMP ou GL_REPEAT. Consulte a discussão em GL_TEXTURE_WRAP_S. Inicialmente, GL_TEXTURE_WRAP_T é definido como GL_REPEAT

param

O valor de pname.

Retornar valor

Essa função não retorna um valor.

Códigos de erro

Os códigos de erro a seguir podem ser recuperados pela função glGetError .

Nome Significado
GL_INVALID_ENUM
target ou pname não era um dos valores definidos aceitos ou quando param deveria ter tido um valor constante definido (com base no valor de pname) e não.
GL_INVALID_OPERATION
A função foi chamada entre uma chamada para glBegin e a chamada correspondente para glEnd.

Comentários

O mapeamento de textura é uma técnica que aplica uma imagem à superfície de um objeto como se a imagem fosse um decalque ou envoltório de celofane. A imagem é criada no espaço de textura, com um (s, t) sistema de coordenadas. Uma textura é uma imagem unidimensional ou bidimensional e um conjunto de parâmetros que determinam como os exemplos são derivados da imagem.

A função glTexParameter atribui o valor ou valores em parâmetros ao parâmetro de textura especificado como pname. O parâmetro de destino define a textura de destino, seja GL_TEXTURE_1D ou GL_TEXTURE_2D.

À medida que mais elementos de textura forem amostrados no processo de minificação, menos artefatos de alias serão aparentes. Embora as funções GL_NEAREST e GL_LINEAR de minificação possam ser mais rápidas do que as outras quatro, elas amostram apenas um ou quatro elementos de textura para determinar o valor de textura do pixel que está sendo renderizado e podem produzir padrões de moire ou transições irregulares. O valor padrão de GL_TEXTURE_MIN_FILTER é GL_NEAREST_MIPMAP_LINEAR.

Suponha que a texturização esteja habilitada (chamando glEnable com GL_TEXTURE_1D de argumento ou GL_TEXTURE_2D) e GL_TEXTURE_MIN_FILTER seja definida como uma das funções que exigem um mipmap. Se as dimensões das imagens de textura definidas atualmente (com chamadas anteriores para glTexImage1D ou glTexImage2D) não seguirem a sequência adequada para mipmaps ou houver menos imagens de textura definidas do que o necessário ou o conjunto de imagens de textura tiver números diferentes de componentes de textura, será como se o mapeamento de textura estivesse desabilitado. A filtragem linear acessa os quatro elementos de textura mais próximos apenas em texturas 2D. Em texturas 1D, a filtragem linear acessa os dois elementos de textura mais próximos. A função a seguir recupera informações relacionadas a glTexParameterf, glTexParameteri, glTexParameterfv e glTexParameteriv:

glGetTexParameter

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Gl.h
Biblioteca
Opengl32.lib
DLL
Opengl32.dll

Confira também

glBegin

glBindTexture

glCopyPixels

glCopyTexImage1D

glCopyTexImage2D

glCopyTexSubImage2D

glDrawPixels

glEnd

glGetTexParameter

glPixelStore

glPixelTransfer

glPrioritizeTextures

glTexEnv

glTexGen

glTexImage1D

glTexImage2D

glTexSubImage1D

glTexSubImage2D