glCopyTexImage1D-Funktion

Die glCopyTexImage1D-Funktion kopiert Pixel aus dem Framepuffer in ein eindimensionales Texturbild.

Syntax

void WINAPI glCopyTexImage1D(
   GLenum  target,
   GLint   level,
   GLenum  internalFormat,
   GLint   x,
   GLint   y,
   GLsizei width,
   GLint   border
);

Parameter

Ziel

Das Ziel, für das die Bilddaten geändert werden. Muss den Wert GL _ TEXTURE _ 1D aufweisen.

level

Die Detailebenennummer. Ebene 0 ist das Basisimage. Ebene n ist das Bild der n-ten Mipmapverringerung.

internalFormat

Das interne Format und die Auflösung der Texturdaten. Dieser Parameter muss einer der folgenden symbolischen Werte sein.

Konstante R-Bits G Bits B-Bits A 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-INTENSITÄT
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

Die X-Ebenenkoordinate des Fensters in der linken unteren Ecke der zu kopierenden Pixelzeile.

y

Die y-Ebenenkoordinate des Fensters in der unteren linken Ecke der zu kopierenden Pixelzeile.

width

Die Breite des Texturbilds. Muss 0 oder 2n + 2(Rahmen) für eine ganze Zahl n sein. Die Höhe des Texturbilds ist 1.

Grenze

Die Breite des Rahmens. Muss entweder 0 (null) oder 1 sein.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL _ INVALID _ ENUM
target war kein akzeptierter Wert.
GL _ UNGÜLTIGER _ WERT
level war kleiner als 0 (null) oder größer als log2 max, wobei max der zurückgegebene Wert von GL _ MAX TEXTURE SIZE _ _ ist.
GL _ UNGÜLTIGER _ WERT
border war nicht 0 (null) oder 1.
GL _ UNGÜLTIGER _ WERT
width war kleiner als 0 (null), größer als 2 + GL MAX TEXTURE SIZE, oder die Breite kann nicht als _ _ _ 2n +(Rahmen) für eine ganze Zahl n dargestellt werden.
UNGÜLTIGER _ _ GL-VORGANG
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

Bemerkungen

Die glCopyTexImage1D-Funktion definiert ein eindimensionales Texturbild mit Pixeln aus dem aktuellen Framepuffer und nicht aus dem Hauptspeicher, wie es bei glTexImage1Dder Fall ist.

Unter Verwendung der Mipmapebene, die mit der Ebene angegeben wird, werden Texturarrays als Pixelzeile definiert, die an der unteren linken Ecke des Fensters an den von x und y angegebenen Koordinaten ausgerichtet ist, mit einer Länge, die der Breite + 2 Rahmen * entspricht. Das interne Format des Texturarrays wird mit dem internalFormat-Parameter angegeben.

Die glCopyTexImage1D-Funktion verarbeitet die Pixel in einer Zeile auf die gleiche Weise wie glCopyPixels,mit der Ausnahme, dass vor der endgültigen Konvertierung der Pixel alle Pixelkomponentenwerte an den Bereich 0,1 geklammert und in das interne Format der Textur für die Speicherung im Texturarray konvertiert [ ] werden. Die Pixel reihenfolge wird mit niedrigeren x Koordinaten bestimmt, die niedrigeren Texturkoordinaten entspricht. Wenn einer der Pixel innerhalb einer angegebenen Zeile des aktuellen Framepuffers außerhalb des Fensters liegt, das dem aktuellen Renderingkontext zugeordnet ist, sind ihre Werte nicht definiert.

Aufrufe von glCopyTexImage1D können nicht in Anzeigelisten enthalten sein.

Hinweis

Die glCopyTexImage1D-Funktion ist nur in OpenGL Version 1.1 oder höher verfügbar.

Die Texturierung hat keine Auswirkungen im Farbindexmodus. Die Funktionen glPixelStore und glPixelTransfer wirken sich genau so auf Texturbilder aus, wie sie glDrawPixels beeinflussen.

Die folgende Funktion ruft Informationen im Zusammenhang mit glCopyTexImage1D ab:

glIsEnabled mit Argument GL _ TEXTURE _ 1D

Requirements (Anforderungen)

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Weitere Informationen

glCopyPixels

glCopyTexImage2D

glDrawPixels

glFog

glPixelStore

glPixelTransfer

glTexEnv

glTexGen

glTexImage1D

glTexImage2D

glTexParameter