ILBM

ILBMファイルフォーマットの概要



ILBM(Interleaved Bitmap)は、Amigaコンピュータで広く使われていた画像ファイルフォーマットです。Interchange File Format(IFF)という、データ構造をチャンクという単位で管理する規格に基づいており、画像データは複数のビットプレーンで構成されています。ビットプレーンとは、画像の各ピクセルの特定のビットをまとめたもので、ビットプレーンの数によって表示可能な色の数が決まります。また、水平方向と垂直方向の連長圧縮をサポートしており、ファイルサイズを小さくする工夫が凝らされています。

Amigaチップセットとの関係



ILBMフォーマットは、Amigaコンピュータのチップセットと深く関わっています。Amigaには、OCS(Original Chip Set)、ECS(Enhanced Chip Set)、AGA(Advanced Graphics Architecture)の3つの世代のチップセットが存在し、それぞれでILBMのサポート状況が異なります。

OCS/ECS



OCSとECSでは、最大6枚のビットプレーンをサポートしていました。単純に考えれば、6ビットで64色表示が可能ですが、実際にはパレットレジスタが32個しかなく、6枚目のビットプレーンの使い方が重要になります。6枚目のビットプレーンは、ピクセルの輝度(明るい/暗い)を指定して64色を表示するモードと、HAM(Hold And Modify)モードの2つの用途がありました。HAMモードでは、パレットは16色しか使わないものの、制限付きで4096色を表示することが可能でした。

AGA



AGAチップセットでは、8枚のビットプレーンと256色のパレットレジスタを備えていました。そのため、64色、128色、256色の表示モードに加え、HAM8モードによって、64色のパレットを使って最大262,144色を表示することができました。

IFFチャンク構造



ILBMはIFFに基づいているため、ファイルは複数のチャンクで構成されています。各チャンクは、4バイトのタイプ識別子と4バイトのチャンク長を持ち、その後にチャンクの内容が続きます。この構造により、フォーマットの拡張が容易になっています。プログラムは未知のチャンクをスキップすることができるため、互換性を保ちながら新しい機能を追加できます。

主要なチャンク



ILBMで使用される主なチャンクを以下に示します。

BMHD(BitMapHeaDer): ビットマップに関するヘッダー情報を含みます。画像の幅、高さ、ビットプレーンの数などが含まれます。
CMAP(ColorMAP): カラーパレット情報を格納します。標準的なIFFチャンクです。
GRAB(GRAB position): 画像の表示位置に関する情報を格納します。
CAMG(Commodore AMiGa computer): Amigaコンピュータに関する情報を格納します。
BODY: ビットプレーンデータとマスクデータを格納します。

さらに、標準的なIFFチャンクを使用して、作者、バージョン、著作権などの情報を追加することもできます。Deluxe Paintで作成されたファイルには、DPAN(Dpaint)チャンクが含まれる場合もあります。このチャンクには、Deluxe Paint固有の設定情報が格納されています。

ANIMフォーマット



ILBMから派生したフォーマットとして、アニメーションをサポートするANIMがあります。ANIMでは、以下のチャンクが追加定義されています。

ANHD(ANimation HeaDer): アニメーションに関するヘッダー情報を含みます。フレーム数などが含まれます。
* DLTA(DeLTA): フレーム間の差分データを格納します。複数の圧縮方法をサポートしています。これにより、アニメーションデータのファイルサイズを削減できます。

ILBMはAmigaの歴史において重要な役割を果たしたファイルフォーマットであり、その設計思想は現代の画像フォーマットにも影響を与えています。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。