Função glCopyTexSubImage1D
A função glCopyTexSubImage1D copia uma sub-imagem de uma imagem de textura unidimensional do framebuffer.
Sintaxe
void WINAPI glCopyTexSubImage1D(
GLenum target,
GLint level,
GLint xoffset,
GLint x,
GLint y,
GLsizei width
);
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. O nível 0 é a imagem base. O nível n é a nª imagem de redução de mipmap.
-
xoffset
-
O deslocamento de texel dentro da matriz de textura.
-
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 sub-imagem da imagem de textura. Especificar uma sub-imagem de textura com largura zero não tem efeito.
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 level é maior que log2(max), em que max é o valor retornado de GL_MAX_TEXTURE_SIZE. |
|
xoffset era menor que borda ou (larguraxoffset + )era maior que (borda w + ), em que w é GL_TEXTURE_WIDTH e borda é GL_TEXTURE_BORDER. Observe que w inclui o dobro da largura da borda . |
|
width era menor que borda ou y era menor que borda, onde borda é a largura da borda da matriz de textura. |
|
A matriz de textura não foi definida por uma operação glTexImage1D anterior. |
|
A função foi chamada entre uma chamada para glBegin e a chamada correspondente para glEnd. |
Comentários
A função glCopyTexSubImage1D substitui uma parte de uma imagem de textura unidimensional usando pixels do quadro atual, em vez de main memória, como é o caso de glTexSubImage1D.
Uma linha de pixels começando com as coordenadas de janela especificadas por x e y e com a largura de comprimento substitui a parte da matriz de textura pelos índices xoffset por xoffset + (largura - 1). O destino na matriz de textura não pode incluir texels fora da matriz de textura originalmente especificada.
A função glCopyTexSubImage1D 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.
Nenhuma alteração é feita no parâmetro internalFormat, width ou border da matriz de textura especificada ou para valores texel fora da sub-imagem de textura especificada.
Você não pode incluir chamadas para glCopyTexSubImage1D em listas de exibição.
Observação
A função glCopyTexSubImage1D 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 a maneira como os pixels são desenhados usando glDrawPixels.
As seguintes funções recuperam informações relacionadas a glCopyTexSubImage1D:
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 |
|