> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CheckFeatureSupport

> 現在のグラフィックス ドライバーがサポートする機能に関する情報を取得します。(ID3D12Device.CheckFeatureSupport)

現在のグラフィックス ドライバーがサポートする機能に関する情報を取得します。

## 構文

```cpp theme={null}
HRESULT CheckFeatureSupport(
    D3D12_FEATURE Feature,
    void  pFeatureSupportData,
    UINT FeatureSupportDataSize
)
```

### パラメーター

*Feature*\
型: D3D12\_FEATURE

サポートを照会する機能を記述する [D3D12\_FEATURE](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_feature_public.md) 列挙型からの定数。

*pFeatureSupportData \[in, out]*\
型: void \*

*Feature* パラメーターの値に対応するデータ構造体へのポインター。各定数に対応するデータ構造体を特定するには、[D3D12\_FEATURE](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_feature_public.md) を参照してください。

*FeatureSupportDataSize*\
型: UINT

*pFeatureSupportData* パラメーターが指す構造体のサイズ。

### 戻り値

型: HRESULT

成功した場合、**S\_OK** を返します。*pFeatureSupportData* パラメーターにサポートされていないデータ型が渡された場合、または *FeatureSupportDataSize* パラメーターにサイズの不一致が検出された場合は、**E\_INVALIDARG** を返します。

## 解説

使用例として、レイ トレーシングのサポートを確認するには、*pFeatureSupportData* パラメーターに [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS5](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options5_public.md) 構造体を指定します。関数が正常に完了したら、値が設定された **D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS5** 構造体の *RaytracingTier* フィールド (サポートされているレイ トレーシング階層を示す) にアクセスします。

詳細については、[機能のクエリ](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/capability-querying) を参照してください。

DXGI フォーマットに対するハードウェア サポート
DXGI フォーマットとハードウェア機能の表を表示するには、以下を参照してください。

<ul>
  <li>
    [Direct3D 機能レベル 12.1 ハードウェアの DXGI フォーマット サポート](https://learn.microsoft.com/en-us/windows/desktop/direct3ddxgi/hardware-support-for-direct3d-12-1-formats)
  </li>

  <li>
    [Direct3D 機能レベル 12.0 ハードウェアの DXGI フォーマット サポート](https://learn.microsoft.com/en-us/windows/desktop/direct3ddxgi/hardware-support-for-direct3d-12-0-formats)
  </li>

  <li>
    [Direct3D 機能レベル 11.1 ハードウェアの DXGI フォーマット サポート](https://learn.microsoft.com/en-us/windows/desktop/direct3ddxgi/format-support-for-direct3d-11-1-feature-level-hardware)
  </li>

  <li>
    [Direct3D 機能レベル 11.0 ハードウェアの DXGI フォーマット サポート](https://learn.microsoft.com/en-us/windows/desktop/direct3ddxgi/format-support-for-direct3d-11-0-feature-level-hardware)
  </li>

  <li>
    [Direct3D 10Level9 フォーマットに対するハードウェア サポート](https://learn.microsoft.com/en-us/previous-versions/ff471324\(v=vs.85\))
  </li>

  <li>
    [Direct3D 機能レベル 10.1 ハードウェアのフォーマット サポート](https://learn.microsoft.com/en-us/windows/desktop/direct3ddxgi/format-support-for-direct3d-feature-level-10-1-hardware)
  </li>

  <li>
    [Direct3D 機能レベル 10.0 ハードウェアのフォーマット サポート](https://learn.microsoft.com/en-us/windows/desktop/direct3ddxgi/format-support-for-direct3d-feature-level-10-0-hardware)
  </li>
</ul>

#### 例

[D3D1211on12](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/working-samples) サンプルでは、**ID3D12Device::CheckFeatureSupport** を次のように使用しています。

```cpp theme={null}
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;
}

```

## 要件

**ヘッダー:** d3d12\_xs.h または d3d12\_x.h\
**ライブラリ:** d3d12\_xs.lib または d3d12\_x.lib\
**サポートされているプラットフォーム**: XBOX Series 本体および XBOX One ファミリ

## 関連項目

[ID3D12Device](https://docs.xbox.com/ja-jp/reference/graphics/d3d12_x/interfaces/id3d12device/id3d12device.md)


## Related topics

- [D3D12_FEATURE](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_feature_public.md)
- [D3D12_FEATURE_DATA_D3D12_OPTIONS5](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options5_public.md)
- [D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_command_queue_priority_public.md)
- [D3D12_FEATURE_DATA_SHADER_CACHE](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_shader_cache_public.md)
- [D3D12_FEATURE_DATA_D3D12_OPTIONS2](https://docs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options2_public.md)
