IDirect3D9::CheckDeviceFormatConversion 方法 (d3d9.h)
測試裝置,以查看它是否支援從一個顯示格式轉換成另一種顯示格式。
語法
HRESULT CheckDeviceFormatConversion(
[in] UINT Adapter,
[in] D3DDEVTYPE DeviceType,
[in] D3DFORMAT SourceFormat,
[in] D3DFORMAT TargetFormat
);
參數
[in] Adapter
類型: UINT
顯示配接器序數位。 D3DADAPTER_DEFAULT一律是主要顯示適配卡。 當這個值等於或超過系統中的顯示適配卡數目時,這個方法會傳回D3DERR_INVALIDCALL。
[in] DeviceType
類型: D3DDEVTYPE
裝置類型。 D3DDEVTYPE列舉型別的成員。
[in] SourceFormat
類型: D3DFORMAT
來源配接器格式。 D3DFORMAT列舉型別的成員。
[in] TargetFormat
類型: D3DFORMAT
目標配接器格式。 D3DFORMAT列舉型別的成員。
傳回值
類型: HRESULT
如果方法成功,傳回值會D3D_OK。 如果方法失敗,傳回值會D3DERR_INVALIDCALL。 當硬體不支援兩種格式之間的轉換時,此方法會傳回D3DERR_NOTAVAILABLE。
備註
使用 CheckDeviceType 來測試與顯示格式不同的後端緩衝區之間的相容性,將會傳回適當的值。 這表示呼叫會反映裝置功能。 如果裝置無法轉譯為所要求的後端緩衝區格式,呼叫仍會傳回D3DERR_NOTAVAILABLE。 如果裝置可以轉譯為格式,但無法執行色彩轉換簡報,則傳回值也會D3DERR_NOTAVAILABLE。 應用程式可以藉由呼叫 CheckDeviceFormatConversion 來探索簡報本身的硬體支援。 不會提供色彩轉換簡報本身的軟體模擬。
CheckDeviceFormatConversion 也可以用來判斷呼叫 StretchRect 時允許來源介面格式和目的地介面格式的組合。
色彩轉換僅限於下列來源和目標格式。
- 來源格式必須是FOURCC格式或有效的後台緩衝區格式。 如需這些清單,請參閱 FourCC Formats 和 BackBuffer 或 Display Formats。
- 目標格式必須是下列其中一個未帶正負號的格式:
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
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | d3d9.h (包含 D3D9.h) |
程式庫 | D3D9.lib |