Метод 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

См. также раздел

ColorFill

IDirect3D9