Pixeldatentyp

Aus DGL Wiki
(Weitergeleitet von Datentypen für Pixel)
Wechseln zu: Navigation, Suche

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