funzione glCopyTexSubImage1D

La funzione glCopyTexSubImage1D copia un'immagine secondaria di un'immagine di trama unidimensionale dal framebuffer.

Sintassi

void WINAPI glCopyTexSubImage1D(
   GLenum  target,
   GLint   level,
   GLint   xoffset,
   GLint   x,
   GLint   y,
   GLsizei width
);

Parametri

target

Destinazione in cui verranno modificati i dati dell'immagine. Deve avere il valore GL_TEXTURE_1D.

level

Numero di dettaglio del livello. Il livello 0 è l'immagine di base. Il livello n è l'n immaginedi riduzione mipmap.

xoffset

Offset del texel all'interno della matrice di trame.

x

Coordinata del piano x della finestra dell'angolo inferiore sinistro della riga di pixel da copiare.

y

Coordinata del piano y della finestra dell'angolo inferiore sinistro della riga di pixel da copiare.

width

Larghezza dell'immagine secondaria dell'immagine della trama. La specifica di una sottomaschera con larghezza zero non ha alcun effetto.

Valore restituito

Questa funzione non restituisce un valore.

Codici di errore

I codici di errore seguenti possono essere recuperati dalla funzione glGetError .

Nome Significato
GL_INVALID_ENUM
target non è un valore accettato.
GL_INVALID_VALUE
il livello è minore di zero o il livello è maggiore di log2(max), dove max è il valore restituito di GL_MAX_TEXTURE_SIZE.
GL_INVALID_VALUE
xoffset è minore del bordo o (larghezzaxoffset + ) è maggiore di (bordo w + ), dove w è GL_TEXTURE_WIDTH e il bordo è GL_TEXTURE_BORDER. Si noti che w include due volte la larghezza del bordo .
GL_INVALID_VALUE
la larghezza è minore del bordo o y è minore del bordo, dove il bordo corrisponde alla larghezza del bordo della matrice di trame.
GL_INVALID_OPERATION
La matrice di trame non è stata definita da un'operazione glTexImage1D precedente.
GL_INVALID_OPERATION
La funzione è stata chiamata tra una chiamata a glBegin e la chiamata corrispondente a glEnd.

Commenti

La funzione glCopyTexSubImage1D sostituisce una parte di un'immagine di trama unidimensionale usando i pixel del framebuffer corrente, anziché dalla memoria principale, come nel caso di glTexSubImage1D.

Una riga di pixel che inizia con le coordinate della finestra specificate da x e y e con la larghezza della lunghezza sostituisce la parte della matrice di trama con gli indici xoffset tramite xoffset + (width - 1). La destinazione nella matrice di trame non può includere alcun texel all'esterno della matrice di trama specificata in origine.

La funzione glCopyTexSubImage1D elabora i pixel in una riga nello stesso modo di glCopyPixels , ad eccezione del fatto che prima della conversione finale dei pixel, tutti i valori dei componenti pixel vengono bloccati nell'intervallo [0,1] e convertiti nel formato interno della trama per l'archiviazione nella matrice di trama. L'ordinamento dei pixel viene determinato con coordinate x inferiori corrispondenti alle coordinate della trama inferiori. Se uno dei pixel all'interno di una riga specificata del framebuffer corrente si trovano all'esterno della finestra associata al contesto di rendering corrente, i relativi valori non sono definiti.

Non viene apportata alcuna modifica al parametro internalFormat, width o border della matrice di trama specificata o ai valori di texel esterni all'immagine secondaria della trama specificata.

Non è possibile includere chiamate a glCopyTexSubImage1D negli elenchi di visualizzazione.

Nota

La funzione glCopyTexSubImage1D è disponibile solo in OpenGL versione 1.1 o successiva.

Il texturing non ha alcun effetto in modalità di indice dei colori. Le funzioni glPixelStore e glPixelTransfer influiscono esattamente sulle immagini delle trame nel modo in cui influiscono sul modo in cui i pixel vengono disegnati usando glDrawPixels.

Le funzioni seguenti recuperano informazioni correlate a glCopyTexSubImage1D:

glGetTexImage

glIsEnabled con argomento GL_TEXTURE_1D

Requisiti

Requisito Valore
Client minimo supportato
Windows 2000 Professional [solo app desktop]
Server minimo supportato
Windows 2000 Server [solo app desktop]
Intestazione
Gl.h
Libreria
Opengl32.lib
DLL
Opengl32.dll

Vedi anche

glBegin

glCopyTexSubImage2D

glDrawPixels

glEnd

glFog

glPixelStore

glPixelTransfer

glTexEnv

glTexGen

glTexImage1D

glTexImage2D

glTexSubImage1D

glTexSubImage2D

glTexParameter