Ein Pixel ist eine Sammlung von Komponenten. Traditionell sind diese Komponenten rot, grün und blau, wobei jede von ihnen 8 Datenbits benötigt.
Da es oft vorteilhaft ist, den Speicher auf bestimmte Arten auszurichten, wurden diese manchmal in jeweils 32 Bit Speicherplatz gepackt. Dadurch verbleiben am Ende jedes Pixels 8 zusätzliche Datenbits. Da dies weder Rot noch Grün oder Blau ist, braucht es einen Namen - und Alpha war ein relativ bedeutungsloser Name.
Wenn Sie nun ein Array von Pixeln in einem Rechteck angeordnet haben, erhalten Sie Folgendes:
RGBARGBARGBARGBA
RGBARGBARGBARGBA
RGBARGBARGBARGBA
RGBARGBARGBARGBA
manchmal möchten Sie nur über eine der oben genannten Farben sprechen, sagen Sie rot:
R***R***R***R***
R***R***R***R***
R***R***R***R***
R***R***R***R***
Diese Unterauswahl von nur einem Element jeder Pixelkomponente wird als "Kanal" im Bild bezeichnet. Da die Pixel 4 Komponenten haben, hat dieses Bild 4 Kanäle.
Es gibt andere Bildformate ohne Alphakanal:
RGBRGBRGBRGB
RGBRGBRGBRGB
RGBRGBRGBRGB
RGBRGBRGBRGB
und es gibt Formate mit unterschiedlicher Anzahl von Bits pro Pixelkomponente (3,5,8,16,32), und einige haben ungleichmäßige Bits pro Pixelkomponente.
Der Kanal wird zum "virtuellen" Array von nur einer Pixelkomponente. (Ich sage virtuell, weil es zwischen jedem Element einen Schritt gibt, während Arrays traditionell keinen solchen Schritt haben.)
Der RGB-Anteil ist ebenfalls nicht festgelegt. Sie können ein Graustufenbild mit oder ohne Alphakanal erstellen. Sie können ein CMYK-Bild erstellen (Cyan Magenta Yellow Schwarz, normalerweise in einem subtraktiven Farbraum). Sie können ein Bild erstellen, das ein hat unzählige verschiedene Farbkanäle, die mit einem Specular Raytracer oder einem wissenschaftlichen Instrument erstellt wurden.
Während ich Pixel so behandelt habe, als wären sie immer zusammenhängend, ist es auch möglich, die Kanäle auf mehrere Orte aufzuteilen:
RRRRGGGGBBBBAAAA
RRRRGGGGBBBBAAAA
RRRRGGGGBBBBAAAA
RRRRGGGGBBBBAAAA
oder auch
RRRR
RRRR
RRRR
RRRR
GGGG
GGGG
GGGG
GGGG
BBBB
BBBB
BBBB
BBBB
AAAA
AAAA
AAAA
AAAA
oder RGB gepackt und A in einem separaten Puffer gespeichert haben.
Dies ist bei Live-Daten in Spielen ungewöhnlich, da moderne Grafikkarten häufig auf RGBA-Pixel ausgelegt sind. RGB kann einheitlich gehandhabt werden, und mit A können schnelle Berechnungen durchgeführt werden, die das Zusammensetzen eines RGBA-Pixels auf einem vorgemalten Hintergrund ermöglichen.
Der Alpha-Kanal wird häufig für Transparenzinformationen verwendet. Ärgerlicherweise wird der Maximalwert von Alpha von verschiedenen Codebasen manchmal als transparent und manchmal als undurchsichtig behandelt. Dies ist heutzutage wieder weniger verbreitet. Der Alpha-Kanal wurde auch für die Z-Buffer-Anordnung verwendet (wie weit der Pixel vom Betrachter entfernt ist), um ein ungeordnetes Zeichnen einer Szene zu ermöglichen, und traditionell wurde die Mip-Zuordnung durchgeführt, indem das Bild mit 2x 2x (oder 4x weniger Pixel) niedrigerer Auflösung hineingeschoben wurde der Alpha-Kanal des Bildes mit höherer Auflösung, rekursiv.
Selbst in einem System, das RGBA-Pixel verwendet, kann die Bedeutung dieser Pixel nicht übereinstimmen. Misst R, wie viel Rot ein Mensch sieht oder wie viele Photonen von Rot emittiert werden sollen? Dies ist der Unterschied zwischen linearen und nichtlinearen Farbräumen und wirkt sich auf die richtige Art und Weise aus, die Pixel mit einem Transparenzkanal zusammenzusetzen.