Поделиться через


Метод ID3D12Device::CheckFeatureSupport (d3d12.h)

Возвращает сведения о функциях, поддерживаемых текущим графическим драйвером.

Синтаксис

HRESULT CheckFeatureSupport(
            D3D12_FEATURE Feature,
  [in, out] void          *pFeatureSupportData,
            UINT          FeatureSupportDataSize
);

Параметры

Feature

Тип: D3D12_FEATURE

Константой из перечисления D3D12_FEATURE , описывающей функции, которые необходимо запросить для поддержки.

[in, out] pFeatureSupportData

Тип: void*

Указатель на структуру данных, соответствующую значению параметра Feature . Сведения о том, как определить соответствующую структуру данных для каждой константы, см . в разделе D3D12_FEATURE.

FeatureSupportDataSize

Тип: UINT

Размер структуры, на которую указывает параметр pFeatureSupportData .

Возвращаемое значение

Тип: HRESULT

В случае успешного выполнения возвращает S_OK. Возвращает E_INVALIDARG , если неподдерживаемый тип данных передается параметру pFeatureSupportData или если для параметра FeatureSupportDataSize обнаружено несоответствие размера.

Комментарии

Например, чтобы проверка для поддержки трассировки лучей, укажите структуру D3D12_FEATURE_DATA_D3D12_OPTIONS5 в параметре pFeatureSupportData. После успешного завершения функции получите доступ к полю RaytracingTier (которое указывает поддерживаемый уровень трассировки лучей) в уже заполненной D3D12_FEATURE_DATA_D3D12_OPTIONS5 структуре.

Дополнительные сведения см. в разделе Запросы возможностей.

Поддержка аппаратного обеспечения форматов DXGI

Чтобы просмотреть таблицы форматов DXGI и функций оборудования, см. следующие сведения:

Примеры

В примере D3D1211on12 используется ID3D12Device::CheckFeatureSupport следующим образом:

inline UINT8 D3D12GetFormatPlaneCount(
    _In_ ID3D12Device* pDevice,
    DXGI_FORMAT Format
    )
{
    D3D12_FEATURE_DATA_FORMAT_INFO formatInfo = {Format};
    if (FAILED(pDevice->CheckFeatureSupport(D3D12_FEATURE_FORMAT_INFO, &formatInfo, sizeof(formatInfo))))
    {
        return 0;
    }
    return formatInfo.PlaneCount;
}

Требования

   
Целевая платформа Windows
Header d3d12.h
Библиотека D3D12.lib
DLL D3D12.dll

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

ID3D12Device