Pixeldatentyp
Aus DGL Wiki
(Weitergeleitet von Datentypen für Pixel)
Der Pixeldatentyp gibt an, wieviel Bit OpenGL für einen Pixel aus den eingelesenen Pixeldaten erwartet (z.B. bei glReadPixels und glTexImage2D) oder wieviel Bit die Pixel besitzen, welche von der Funktion zurückgegeben werden sollen (z.B. bei glDrawPixels).
Einige Datentypen sind nur für bestimmte Pixelformate zulässig, so darf man z.B. GL_UNSIGNED_BYTE_3_2_2 nur im Zusammenhang mit dem Format GL_RGB benutzen, da dieser Datentyp jeder der drei RGB-Farbkomponenten die genau Bitanzahl zuordnet.
tabellarische Übersicht
Folgende Pixeldatentypen werden von OpenGL unterstützt :
Konstante | Beschreibung | anwendbar auf | ab Version |
---|---|---|---|
GL_UNSIGNED_BYTE | Jede Farbkomponente ist ein vorzeichenloser 8-Bit Integerwert | GL_RGB | 1 |
GL_BYTE | 8-Bit Integer | GL_RGB | 1 |
GL_BITMAP | Jeder Pixel wird mit nur einem Bit dargestellt | GL_RGB | 1 |
GL_UNSIGNED_SHORT | vorzeichenloser 16-Bit Integer | GL_RGB | 1 |
GL_SHORT | 16-Bit Integer | GL_RGB | 1 |
GL_UNSIGNED_INT | vorzeichenloser 32-Bit Integer | GL_RGB | 1 |
GL_INT | 32-Bit Integer | GL_RGB | 1 |
GL_FLOAT | Single-Precision Float | GL_RGB | 1 |
GL_UNSIGNED_BYTE_3_2_2 | 8 Bits insgesamt für einen gepackten GL_RGB Pixel : 3 Bits für Rot, 3 Bits für Blau und 2 Bits für Grün. | GL_RGB | 1.2 |
GL_UNSIGNED_BYTE_2_3_3_REV | 8 Bits insgesamt für einen gepackten GL_RGB Pixel mit Farbkomponenten in umgedrehter Reihenfolge: 2 Bits für Grün, 3 Bits für Blau und 3 Bits für Rot. | GL_RGB | 1.2 |
GL_UNSIGNED_BYTE_5_6_5 | 16 Bits insgesamt für einen gepackten GL_RGB Pixel : 5 Bits für Rot, 6 Bits für Blau und 2 Bits für Grün. | GL_RGB | 1.2 |
GL_UNSIGNED_BYTE_5_6_5_REV | 8 Bits insgesamt für einen gepackten GL_RGB Pixel mit Farbkomponenten in umgedrehter Reihenfolge: 5 Bits für Grün, 6 Bits für Blau und 5 Bits für Rot. | GL_RGB | 1.2 |
GL_UNSIGNED_SHORT_4_4_4_4 | 16 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel : 4 Bits für die erste, 4 Bits für die zweite, 4 Bits für die dritte und 4 Bits für die letzte Komponente. | GL_RGBA, GL_BGRA | 1.2 |
GL_UNSIGNED_SHORT_4_4_4_4_REV | 16 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel mit den Komponenten in umgedrehter Reihenfolge : 4 Bits für die vierte, 4 Bits für die dritte, 4 Bits für die zweite und 4 Bits für die erste Komponente. | GL_RGBA, GL_BGRA | 1.2 |
GL_UNSIGNED_SHORT_5_5_5_1 | 16 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel : 5 Bits für die erste, 5 Bits für die zweite, 5 Bits für die dritte und 1 Bit für die letzte Komponente. | GL_RGBA, GL_BGRA | 1.2 |
GL_UNSIGNED_SHORT_1_5_5_5_REV | 16 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel mit den Komponenten in umgedrehter Reihenfolge : 1 Bit für die vierte, 5 Bits für die dritte, 5 Bits für die zweite und 5 Bits für die erste Komponente. | GL_RGBA, GL_BGRA | 1.2 |
GL_UNSIGNED_INT_8_8_8_8 | 32 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel : 8 Bits für die erste, 8 Bits für die zweite, 8 Bits für die dritte und 8 Bits für die letzte Komponente. | GL_RGBA, GL_BGRA | 1.2 |
GL_UNSIGNED_INT_8_8_8_8_REV | 32 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel mit den Komponenten in umgedrehter Reihenfolge : 8 Bits für die vierte, 8 Bits für die dritte, 8 Bits für die zweite und 8 Bits für die erste Komponente. | GL_RGBA, GL_BGRA | 1.2 |
GL_UNSIGNED_INT_10_10_10_2 | 32 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel : 10 Bits für die erste, 10 Bits für die zweite, 10 Bits für die dritte und 4 Bits für die letzte Komponente. | GL_RGBA, GL_BGRA | 1.2 |
GL_UNSIGNED_INT_2_10_10_10_REV | 32 Bits insgesamt für einen gepackten GL_RGBA oder GL_BGRA Pixel mit den Komponenten in umgedrehter Reihenfolge : 2 Bits für die vierte, 10 Bits für die dritte, 10 Bits für die zweite und 10 Bits für die erste Komponente. | GL_RGBA, GL_BGRA | 1.2 |