internes Pixelformat
Das interne Pixelformat einer Funktion bestimmt, wie externe Pixeldaten intern in der Grafikkarte abgespeichert werden (z.B. bei den Befehlen glColorTable, glConvolutionFilter oder glTexImage2D).
Inhaltsverzeichnis
Hauptformate
Alle möglichen Formate lassen sich in zwei Gruppen einteilen : Einmal in die Formate, die keine bestimmte Auflösung vorgeben, sondern nur bestimmen, welche (Farb-)komponenten abgespeichert werden (Die sogenannten Hauptformate). Dazu gehören die Parameter GL_ALPHA, GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_INTENSITY, GL_RGB, GL_RGBA und GL_DEPTH_COMPONENT.
Nebenformate
Die restlichen Formate (Nebenformate) geben immer ein bestimmtes (z.B. GL_R3_G3_B2) Packformat vor. Allerding muss beachtet werden, dass nicht jede OpenGL-Implementation dazu verpflichtet ist, Pixeldaten in einem bestimmten Packformat abzuspeichern. Sie kann nur garantieren, dass Pixeldaten in ein Format umgewandelt werden, welches das angegebene interne Format so gut wie möglich approximiert, schlimmstenfalls in eins der Hauptformate, welche eine OpenGL-Implementierung auf jeden Fall beherrschen muss. Z.B. ist auf jeden Fall garantiert, dass GL_R3_G3_B2 schlimmstenfalls als GL_RGB abgespeichert wird.
GL_COMPRESSED_*
Unbestimmte komprimierte Formate werden ab OpenGL Version 1.3 unterstützt und auch ab da auch nur für Texturen (z.B. für die Funktion glTexImage2D).
Numerische Angaben
Einige Formate können auch numerisch angegeben werden (so wie es nur in OpenGL 1.0 möglich war). Dazu gehören die Formate GL_LUMINANCE (=1), GL_LUMINANCE_ALPHA (=2), GL_RGB (=3) und GL_RGBA (=4).
tabellarische Übersicht
Hauptformat | Wert | Nebenformat | Beschreibung | ab Version |
---|---|---|---|---|
GL_LUMINANCE | 1 | Jeder Pixel beinhaltet einen Grauwert | 1 | |
GL_COMPRESSED_LUMINANCE | Jeder Pixel beinhaltet einen gepackten Grauwert | 1.3 | ||
GL_LUMINANCE4 | Jeder Pixel beinhaltet einen 4-Bit-Grauwert | 1.2 | ||
GL_LUMINANCE8 | Jeder Pixel beinhaltet einen 8-Bit-Grauwert | 1.2 | ||
GL_LUMINANCE12 | Jeder Pixel beinhaltet einen 12-Bit-Grauwert | 1.2 | ||
GL_LUMINANCE16 | Jeder Pixel beinhaltet einen 16-Bit-Grauwert | 1.2 | ||
GL_LUMINANCE_ALPHA | 2 | Jeder Pixel beinhaltet einen Grauwert und eine Alpha-Komponente | 1 | |
GL_COMPRESSED_LUMINANCE_ALPHA | Jeder Pixel beinhaltet einen gepackten Grauwert und eine gepackte Alpha-Komponente | 1.3 | ||
GL_LUMINANCE4_ALPHA4 | Jeder Pixel beinhaltet einen 4-Bit-Grauwert und eine 4-Bit Alpha-Komponente | 1.2 | ||
GL_LUMINANCE6_ALPHA2 | Jeder Pixel beinhaltet einen 6-Bit-Grauwert und eine 2-Bit Alpha-Komponente | 1.2 | ||
GL_LUMINANCE8_ALPHA8 | Jeder Pixel beinhaltet einen 8-Bit-Grauwert und eine 8-Bit Alpha-Komponente | 1.2 | ||
GL_LUMINANCE12_ALPHA4 | Jeder Pixel beinhaltet einen 12-Bit-Grauwert und eine 4-Bit Alpha-Komponente | 1.2 | ||
GL_LUMINANCE12_ALPHA12 | Jeder Pixel beinhaltet einen 12-Bit-Grauwert und eine 12-Bit Alpha-Komponente | 1.2 | ||
GL_LUMINANCE16_ALPHA16 | Jeder Pixel beinhaltet einen 16-Bit-Grauwert und eine 16-Bit Alpha-Komponente | 1.2 | ||
GL_RGB | 3 | Jeder Pixel beinhaltet eine Rot-, eine Grün- und eine Blaukomponente. | 1 | |
GL_COMPRESSED_RGB | Jeder Pixel beinhaltet eine gepackte Rot-, Grün- und Blaukomponente. | 1.3 | ||
GL_R3_G3_B2 | Jeder Pixel beinhaltet eine 3-Bit-Rot-, eine 3-Bit-Grün- und eine 2-Bit-Blaukomponente. | 1.2 | ||
GL_RGB4 | Jeder Pixel beinhaltet eine 4-Bit-Rot-, eine 4-Bit-Grün- und eine 4-Bit-Blaukomponente. | 1.2 | ||
GL_RGB5 | Jeder Pixel beinhaltet eine 5-Bit-Rot-, eine 5-Bit-Grün- und eine 5-Bit-Blaukomponente. | 1.2 | ||
GL_RGB8 | Jeder Pixel beinhaltet eine 8-Bit-Rot-, eine 8-Bit-Grün- und eine 8-Bit-Blaukomponente. | 1.2 | ||
GL_RGB10 | Jeder Pixel beinhaltet eine 10-Bit-Rot-, eine 10-Bit-Grün- und eine 10-Bit-Blaukomponente. | 1.2 | ||
GL_RGB12 | Jeder Pixel beinhaltet eine 12-Bit-Rot-, eine 12-Bit-Grün- und eine 12-Bit-Blaukomponente. | 1.2 | ||
GL_RGB16 | Jeder Pixel beinhaltet eine 16-Bit-Rot-, eine 16-Bit-Grün- und eine 16-Bit-Blaukomponente. | 1.2 | ||
GL_RGBA | 4 | Jeder Pixel beinhaltet eine Rot-, eine Grün-, eine Blau- und eine Alphakomponente. | 1 | |
GL_COMPRESSED_RGBA | Jeder Pixel beinhaltet eine gepackte Rot-, Grün-, Blau- und Alphakomponente. | 1.3 | ||
GL_RGBA2 | Jeder Pixel beinhaltet eine 2-Bit-Rot-, eine 2-Bit-Grün-, eine 2-Bit-Blau- und eine 2-Bit-Alphakomponente. | 1.2 | ||
GL_RGBA4 | Jeder Pixel beinhaltet eine 4-Bit-Rot-, eine 4-Bit-Grün-, eine 4-Bit-Blau- und eine 4-Bit-Alphakomponente. | 1.2 | ||
GL_RGB5_A1 | Jeder Pixel beinhaltet eine 5-Bit-Rot-, eine 5-Bit-Grün-, eine 5-Bit-Blau- und eine 1-Bit-Alphakomponente. | 1.2 | ||
GL_RGBA8 | Jeder Pixel beinhaltet eine 8-Bit-Rot-, eine 8-Bit-Grün-, eine 8-Bit-Blau- und eine 8-Bit-Alphakomponente. | 1.2 | ||
GL_RGB10_A2 | Jeder Pixel beinhaltet eine 10-Bit-Rot-, eine 10-Bit-Grün-, eine 10-Bit-Blau- und eine 2-Bit-Alphakomponente. | 1.2 | ||
GL_RGBA12 | Jeder Pixel beinhaltet eine 12-Bit-Rot-, eine 12-Bit-Grün-, eine 12-Bit-Blau- und eine 12-Bit-Alphakomponente. | 1.2 | ||
GL_RGBA16 | Jeder Pixel beinhaltet eine 16-Bit-Rot-, eine 16-Bit-Grün-, eine 16-Bit-Blau- und eine 16-Bit-Alphakomponente. | 1.2 | ||
GL_ALPHA | Jeder Pixel beinhaltet eine Alphakomponente. | 1.2 | ||
GL_COMPRESSED_ALPHA | Jeder Pixel beinhaltet eine gepackte Alphakomponente. | 1.3 | ||
GL_ALPHA4 | Jeder Pixel beinhaltet eine 4-Bit-Alphakomponente. | 1.2 | ||
GL_ALPHA8 | Jeder Pixel beinhaltet eine 8-Bit-Alphakomponente. | 1.2 | ||
GL_ALPHA12 | Jeder Pixel beinhaltet eine 12-Bit-Alphakomponente. | 1.2 | ||
GL_ALPHA16 | Jeder Pixel beinhaltet eine 16-Bit-Alphakomponente. | 1.2 | ||
GL_INTENSITY | Jeder Pixel beinhaltet eine Intensitätskomponente. | 1.2 | ||
GL_COMPRESSED_INTENSITY | Jeder Pixel beinhaltet eine gepackte Intensitätskomponente. | 1.3 | ||
GL_INTENSITY4 | Jeder Pixel beinhaltet eine 4-Bit-Intensitätskomponente. | 1.2 | ||
GL_INTENSITY8 | Jeder Pixel beinhaltet eine 8-Bit-Intensitätskomponente. | 1.2 | ||
GL_INTENSITY12 | Jeder Pixel beinhaltet eine 12-Bit-Intensitätskomponente. | 1.2 | ||
GL_INTENSITY16 | Jeder Pixel beinhaltet eine 16-Bit-Intensitätskomponente. | 1.2 | ||
GL_DEPTH_COMPONENT | Jeder Pixel beinhaltet eine Z-Komponente. | 1.4 | ||
GL_DEPTH_COMPONENT16 | Jeder Pixel beinhaltet eine 16-Bit-Z-Komponente. | 1.4 | ||
GL_DEPTH_COMPONENT24 | Jeder Pixel beinhaltet eine 24-Bit-Z-Komponente. | 1.4 | ||
GL_DEPTH_COMPONENT32 | Jeder Pixel beinhaltet eine 32-Bit-Z-Komponente. | 1.4 |