IDirect3D9::CheckDeviceFormatConversion メソッド
IDirect3D9::CheckDeviceFormatConversion メソッド
デバイスがディスプレイ フォーマットの変換をサポートするかどうかをテストする。
構文
HRESULT CheckDeviceFormatConversion(
UINT Adapter,
D3DDEVTYPE DeviceType,
D3DFORMAT SourceFormat,
D3DFORMAT TargetFormat
);
パラメータ
- Adapter
[in] ディスプレイ アダプタの序数。D3DADAPTER_DEFAULT は常にプライマリ ディスプレイ アダプタである。この値がシステムのディスプレイ アダプタの数以上の場合、このメソッドは D3DERR_INVALIDCALL を返す。 - DeviceType
[in] デバイス タイプ。D3DDEVTYPE 列挙型のメンバ。 - SourceFormat
[in] 転送元アダプタのフォーマット。D3DFORMAT 列挙型のメンバ。 - TargetFormat
[in] 転送先アダプタのフォーマット。D3DFORMAT 列挙型のメンバ。
戻り値
成功した場合は、D3D_OK を返す。
失敗した場合は、D3DERR_INVALIDCALL を返す。
ハードウェアが 2 つのフォーマット間での変換をサポートしない場合は、D3DERR_NOTAVAILABLE を返す。
注意
IDirect3D9::CheckDeviceType を使って、ディスプレイ フォーマットと異なるバック バッファとの互換性をテストすると、適切な値が返される。つまり、呼び出しはデバイスの能力を表す。要求したバック バッファ フォーマットにデバイスがレンダリングできない場合でも、呼び出しは D3DERR_NOTAVAILABLE を返す。デバイスがそのフォーマットにレンダリングできるが、色変換を使ったプレゼンテーションを実行できない場合も、戻り値は D3DERR_NOTAVAILABLE になる。アプリケーションでは、IDirect3D9::CheckDeviceFormatConversion を呼び出してプレゼンテーション自体のハードウェア サポートを検出できる。色変換を使ったプレゼンテーション自体のソフトウェア エミュレーションは提供されない。
IDirect3D9::CheckDeviceFormatConversion を使って、IDirect3DDevice9::StretchRect の呼び出しで許可される転送元サーフェイス フォーマットと転送先サーフェイス フォーマットの組み合わせを確認することもできる。
色変換は、次の転送元フォーマットと転送先フォーマットに制限されている。
- 転送元フォーマットは、4 文字コード (FOURCC) フォーマットまたは有効なバック バッファ フォーマットでなければならない。これらの一覧については、「FOURCC フォーマット」および「バック バッファまたはディスプレイ フォーマット」を参照すること。
- 転送先フォーマットは、次の符号なしフォーマットのいずれかでなければならない。
D3DFMT_X1R5G5B5 D3DFMT_A1R5G5B5 D3DFMT_R5G6B5 D3DFMT_R8G8B8 D3DFMT_X8R8G8B8 D3DFMT_A8R8G8B8 D3DFMT_A2R10G10B10 D3DFMT_A16B16G16R16 D3DFMT_A2B10G10R10 D3DFMT_A8B8G8R8 D3DFMT_X8B8G8R8 D3DFMT_A16B16G16R16F D3DFMT_A32B32G32R32F
参照