Метод 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 и функций оборудования, см. следующие сведения:- Поддержка формата DXGI для оборудования уровня компонентов Direct3D 12.1
- Поддержка формата DXGI для оборудования Уровня компонентов Direct3D 12.0
- Поддержка формата DXGI для оборудования Уровня компонентов Direct3D 11.1
- Поддержка формата DXGI для оборудования Уровня компонентов Direct3D 11.0
- Поддержка оборудования для форматов Direct3D 10Level9
- Поддержка формата для оборудования уровня компонентов Direct3D 10.1
- Поддержка формата для оборудования direct3D Feature Level 10.0
Примеры
В примере 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 |