Platform SDK: DirectX

カラー キー フォーマット

[C++]

カラー キーは DDCOLORKEY 構造体に記述される。カラー キーが単色の場合、この構造体の両メンバは同じ値に割り当てられる。または、カラー キーが色域となる。

カラー キーは、サーフェスのピクセル フォーマットを用いて指定される。サーフェスがパレット化されたフォーマットである場合、カラー キーはインデックスまたはインデックス域として指定される。サーフェスが非パレット化ディスプレイ モードにある場合、カラー キーは未処理のピクセル フォーマットで指定される。たとえば、真紫のカラー キーを 16 ビットの 5:6:5 モードで設定するには、0xf81F (赤と青の 5 ビットをすべて設定) の値を使用する。

有効なカラー キーの例をいくつか以下に示す。

8 ビット パレット化モード

// パレット エントリ 26 はカラー キー。
dwColorSpaceLowValue = 26; 
dwColorSpaceHighValue = 26; 

16 ビット パレット化モード

// 色は真紫。
dwColorSpaceLowValue = 0xf81F; 
dwColorSpaceHighValue = 0xf81F; 

単色ではなく色域に対するサポートはハードウェアによる。ハードウェアに対する DDCAPS 構造体の dwCKeyCaps メンバをチェックすること。HEL は色域をサポートしない。

[Visual Basic]

カラー キーは DDCOLORKEY 型に記述される。カラー キーが単色の場合、この型の両メンバは同じ値に割り当てられる。または、カラー キーが色域となる。

カラー キーは、サーフェスのピクセル フォーマットを用いて指定される。サーフェスがパレット化されたフォーマットである場合、カラー キーはインデックスまたはインデックス域として指定される。サーフェスが非パレット化ディスプレイ モードにある場合、カラー キーは未処理のピクセル フォーマットで指定される。たとえば、赤のカラー キーを 24 ビット トゥルー カラー モードで設定するには、&HFF (赤の 5 ビットをすべて設定) の値を使用する。

有効なカラー キーの例をいくつか以下に示す。

8 ビット パレット化モード

' パレット エントリ 26 はカラー キー。
low = 26
high = 26

24 ビット トゥルーカラー モード

// 16 進の赤の値がカラー キーになる。
low = &HFF
high = &HFF

単色ではなく色域に対するサポートはハードウェアによる。ハードウェアに対する DDCAPS 型の lCKeyCaps メンバをチェックすること。HEL は色域をサポートしない。