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 。 如果不受支持的数据类型传递给 pFeatureSupportData 参数,或者检测到 FeatureSupportDataSize 参数的大小不匹配,则返回E_INVALIDARG

备注

例如,若要检查光线跟踪支持,请在 pFeatureSupportData 参数中指定D3D12_FEATURE_DATA_D3D12_OPTIONS5结构。 函数成功完成后,访问 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
标头 d3d12.h
Library D3D12.lib
DLL D3D12.dll

另请参阅

ID3D12Device