Função glCopyTexImage1D
A função glCopyTexImage1D copia pixels do framebuffer em uma imagem de textura unidimensional.
Sintaxe
void WINAPI glCopyTexImage1D(
GLenum target,
GLint level,
GLenum internalFormat,
GLint x,
GLint y,
GLsizei width,
GLint border
);
Parâmetros
-
destino
-
O destino para o qual os dados da imagem serão alterados. Deve ter o valor GL_TEXTURE_1D.
-
level
-
O número de nível de detalhes. Nível 0 é a imagem base. Nível n é a nimagem de redução de mipmap.
-
internalFormat
-
O formato interno e a resolução dos dados de textura. Esse parâmetro deve ser um dos seguintes valores simbólicos.
Constante R Bits G Bits B Bits Um bits L Bits I Bits GL_ALPHA GL_ALPHA4 4 GL_ALPHA8 8 GL_ALPHA12 12 GL_ALPHA16 16 GL_LUMINANCE GL_LUMINANCE4 4 GL_LUMINANCE8 8 GL_LUMINANCE12 12 GL_LUMINANCE16 16 GL_LUMINANCE_ALPHA GL_LUMINANCE4_ALPHA4 4 4 GL_LUMINANCE6_ALPHA2 2 6 GL_LUMINANCE8_ALPHA8 8 8 GL_LUMINANCE12_ALPHA4 4 12 GL_LUMINANCE12_ALPHA12 12 12 GL_LUMINANCE16_ALPHA16 16 16 GL_INTENSITY GL_INTENSITY4 4 GL_INTENSITY8 8 GL_INTENSITY12 12 GL_INTENSITY16 16 GL_RGB GL_R3_G3_B2 3 3 2 GL_RGB4 4 4 4 GL_RGB5 5 5 5 GL_RGB8 8 8 8 GL_RGB10 10 10 10 GL_RGB12 12 12 12 GL_RGB16 16 16 16 GL_RGBA GL_RGBA2 2 2 2 2 GL_RGBA4 4 4 4 4 GL_RGB5_A1 5 5 5 1 GL_RGBA8 8 8 8 8 GL_RGB10_A2 10 10 10 2 GL_RGBA12 12 12 12 12 GL_RGBA16 16 16 16 16 -
x
-
A coordenada x-plane da janela do canto inferior esquerdo da linha de pixels a ser copiada.
-
y
-
A coordenada do plano y da janela do canto inferior esquerdo da linha de pixels a ser copiada.
-
width
-
A largura da imagem de textura. Deve ser zero ou 2n + 2(borda) para algum número inteiro n. A altura da imagem de textura é 1.
-
Fronteira
-
A largura da borda. Deve ser zero ou 1.
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 |
---|---|
|
target não era um valor aceito. |
|
level foi menor que zero ou maior que log2 max, em que max é o valor retornado de GL_MAX_TEXTURE_SIZE. |
|
borda não era zero ou 1. |
|
width foi menor que zero, maior que 2 + GL_MAX_TEXTURE_SIZE ou largura não pode ser representada como 2n +(borda) para algum número inteiro n. |
|
A função foi chamada entre uma chamada para glBegin e a chamada correspondente para glEnd. |
Comentários
A função glCopyTexImage1D define uma imagem de textura unidimensional usando pixels do framebuffer atual, em vez de main memória, como é o caso de glTexImage1D.
Usando o nível de mipmap especificado com nível, as matrizes de textura são definidas como uma linha de pixel alinhada com o canto inferior esquerdo da janela nas coordenadas especificadas por x e y, com um comprimento igual à largura + 2 * borda. O formato interno da matriz de textura é especificado com o parâmetro internalFormat .
A função glCopyTexImage1D processa os pixels em uma linha da mesma forma que glCopyPixels, exceto que antes da conversão final dos pixels, todos os valores de componente de pixel são fixados no intervalo [0,1] e convertidos no formato interno da textura para armazenamento na matriz de textura. A ordenação de pixels é determinada com coordenadas x inferiores correspondentes a coordenadas de textura inferiores. Se qualquer um dos pixels dentro de uma linha especificada do quadro atual estiver fora da janela associada ao contexto de renderização atual, seus valores serão indefinidos.
Não é possível incluir chamadas para glCopyTexImage1D em listas de exibição.
Observação
A função glCopyTexImage1D só está disponível no OpenGL versão 1.1 ou posterior.
A texturização não tem efeito no modo de índice de cores. As funções glPixelStore e glPixelTransfer afetam imagens de textura exatamente da maneira como afetam glDrawPixels.
A função a seguir recupera informações relacionadas a glCopyTexImage1D:
glIsEnabled com GL_TEXTURE_1D de argumento
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 |
|
Biblioteca |
|
DLL |
|