Bitplane
Eine Bitplane in der Computertechnik ist ein zweidimensionales Feld aus 1-Bit Informationen. Liegt eine Bitplane im Arbeitsspeicher des Computers, so enthält ein einzelnes Speicherwort (z. B. ein Byte) entsprechend viele fortlaufende Bitpositionen. Bitplanes wurden früher in Computern mit vergleichsweise wenig Arbeitsspeicher genutzt, um nur genau so viel Speicher zu verbrauchen, wie wirklich nötig war. Dabei entstand allerdings oft ein Nachteil im Zugriff, wenn in der Rechnerarchitektur einzelne Bits in einem Speicherwort nicht direkt adressierbar waren, sondern nur durch eine Maskierung mit mehreren Assembler-Befehlen manipuliert werden konnten, was den Zugriff durch die CPU verlangsamte. Mit sog. Blittern standen aber auf Bitplanes optimierte Hardwarebausteine zur Verfügung, die schnelle zweidimensionale Blockoperationen (z. B. Löschen, Kopieren, Verschieben) auf Bitplanes durchführen konnten.
Verwendung im Grafikbereich
Bitplanes wurden bis ca. Mitte der 1990er Jahre in Heimcomputer hauptsächlich zur Grafikdarstellung verwendet, daneben auch zur Verwaltung von Disketten.
Im Bereich der Grafik wird die Farbinformationen der Pixel in einer oder mehreren Bitplanes gespeichert. Dabei ergibt sich die Farbinformation eines einzelnen Pixels aus einem Bitwort, in das jeweils ein Bit aus jeder vorhandenen Bitplane eingetragen wird. Um z. B. eine Grafik von 640 × 480 Pixel in zwei Farben darzustellen, wird eine Bitplane mit 38.400 Bytes (640 × 480/8) benötigt. Ein Bit entspricht einem Pixel. Mit zwei Bitplanes stehen zwei Bit pro Pixel zur Verfügung, es können also vier Farben dargestellt werden, mit drei Bitplanes acht Farben usw. Die Bitplanes werden dabei "übereinander gestapelt" und ergeben somit sein zweidimensionales Feld aus Bitworten. Diese Darstellung wird "planar" genannt, im Gegensatz zu "chunky", bei der jeder Pixel ein ganzes physikalisches Speicherwort (z. B. ein Byte für 256 Farben) belegt.
Bitplanebasierte Grafik hat folgende Vorteile:
- Die Bandbreite des Grafik-DACs ist gut skalierbar, d. h., wie viele Daten der Grafikbaustein pro Darstellungsperiode aus dem RAM holen muss.
Nachteile sind:
- Der Zugriff auf einzelne Bits ist in der Regel deutlich langsamer als auf ganze Speicherworte
- Daher schlecht für dreidimensionale Grafik geeignet, bei der die Farbinformation jedes Pixel einzeln für sich berechnet wird. 3D-Grafik auf einem planaren Grafiksystem benötigt eine "chunky to planar"-Umsetzung, da die Farbinformation jedes einzelnen Pixel auf die verwendeten Bitplanes aufgeteilt werden muss.
Bei früheren Computern waren in der Regel sowohl der verfügbare Arbeitsspeicher als auch dessen Bandbreite begrenzt. So wurde z. B. die CPU des Amiga mit zunehmender Farbtiefe deutlich vom Grafik-DAC ausgebremst, sodass Operationen im ChipRAM langsamer wurden und der Rechner zäh reagierte.
Als Mitte der 1990er Jahre zunehmend mehr schnelles RAM auf Grafikkarten integriert wurde und 3D- gegenüber 2D-Grafik dominanter wurde, wurde die planare Darstellung im PC-Bereich vollständig durch "chunky" ersetzt und spielt heute keine Rolle mehr.
Typische Beispiele für planare Grafik sind Computerspiele für Heimcomputer wie den C64 oder den Amiga. Hierbei fand sich oft vertikales oder horizontales Scrolling durch Verschieben der Bitplanes, sowie der Einsatz von Bobs. Ein sehr gutes Beispiel für die Anwendung von Bitplanes ist der Dual Playfield Modus des Amiga, bei dem die Bitplanes in zwei Gruppen aufgeteilt wurden, die unabhängig voneinander dargestellt wurden.