Метод 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 и Форматы BackBuffer или Форматы отображения.
- Целевой формат должен иметь один из следующих неподписанных форматов:
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 |
Header | d3d9.h (включая D3D9.h) |
Библиотека | D3D9.lib |