Platform SDK: DirectX |
バンプ マップとは、特殊なピクセル フォーマットを使用する DirectDraw サーフェス オブジェクトである。赤、緑、および青の色成分を格納するのではなく、バンプ マップの各ピクセルは、u および v のデルタ値 (Du および Dv) を格納し、輝度 L. を格納するときもある。これらの値は、「バンプ マッピングの公式」で説明するように、システムによって適用される。
その他のサーフェスの場合と同様、DDPIXELFORMAT 構造体を使用してバンプ マップ ピクセル フォーマットを指定する。この構造体の dwFlags メンバの DDPF_BUMPDUDV フラグは、バンプ マップ テクスチャのピクセル フォーマットを識別する。このフラグがある場合、dwBumpBitCount、dwBumpDuBitMask、dwBumpDvBitMask、および dwBumpLuminanceBitMask メンバは、バンプ マップのビット深度および各ピクセル コンポーネントのマスク値を記述するために使用できる。
ピクセルの Du および Dv コンポーネントは、–1.0 〜 +1.0 の範囲の符号付き値である。輝度コンポーネントが使用されている場合、この値は 0 〜 255 の範囲の符号なし整数値である。
注 : IDirect3DDevice7::EnumTextureFormats メソッドを呼び出して、サポートされているバンプ マップ ピクセル フォーマットを列挙する必要がある。詳細については、「バンプ マッピングのサポートの検出」を参照すること。
その他のサーフェスの場合と同様、DDPIXELFORMAT 型を使用してバンプ マップ ピクセル フォーマットを指定する。この型の lFlags メンバの DDPF_BUMPDUDV フラグは、バンプ マップ テクスチャのピクセル フォーマットを識別する。このフラグがある場合、lBumpBitCount、lBumpDuBitMask、lBumpDvBitMask、および lBumpLuminanceBitMask メンバは、バンプ マップのビット深度および各ピクセル コンポーネントのマスク値を記述するために使用できる。
ピクセルの Du および Dv コンポーネントは、–1.0 〜 +1.0 の範囲の符号付き値である。輝度コンポーネントが使用されている場合、この値は 0 〜 255 の範囲の符号なし整数値である。
注 : サポートされているバンプ マップ ピクセル フォーマットを列挙して、使用するピクセル フォーマットが有効であることを確認する必要がある。Direct3DDevice7.GetTextureFormatsEnum メソッドを呼び出して、テクスチャ フォーマットの Direct3DEnumPixelFormats 列挙クラスへの参照を取得する。この列挙を使用して、バンプ マップ フォーマットなどサポートされているテクスチャ フォーマットの情報を取得する。詳細については、「バンプ マッピングのサポートの検出」