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

# D3D12_TILED_RESOURCES_TIER

> タイル リソースがサポートされるティア レベルを識別します。

タイル リソースがサポートされるティア レベルを識別します。

## 構文

```cpp theme={null}
typedef enum D3D12_TILED_RESOURCES_TIER
{
    D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0,
    D3D12_TILED_RESOURCES_TIER_1 = 1,
    D3D12_TILED_RESOURCES_TIER_2 = 2,
    D3D12_TILED_RESOURCES_TIER_3 = 3,
    D3D12_TILED_RESOURCES_TIER_4 = 4
} D3D12_TILED_RESOURCES_TIER
```

## 定数

| 定数 | 説明 |
| - | - |
| D3D12\_TILED\_RESOURCES\_TIER\_NOT\_SUPPORTED | [D3D12\_TEXTURE\_LAYOUT\_64KB\_UNDEFINED\_SWIZZLE](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12_x/enums/d3d12_texture_layout.md) レイアウトでテクスチャを作成できないことを示します。[ID3D12Device::CreateReservedResource](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createreservedresource_public.md) は使用できません。バッファーに対しても使用できません。 |
| D3D12\_TILED\_RESOURCES\_TIER\_1 | 2D テクスチャを D3D12\_TEXTURE\_LAYOUT\_64KB\_UNDEFINED\_SWIZZLE レイアウトで作成できることを示します。特定のリソース形式やプロパティには制限があります。詳細については、[D3D12\_TEXTURE\_LAYOUT\_64KB\_UNDEFINED\_SWIZZLE](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12_x/enums/d3d12_texture_layout.md) を参照してください。[ID3D12Device::CreateReservedResource](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createreservedresource_public.md) を使用できます。NULL マッピングに対する GPU の読み書きは未定義です。アプリケーションは、NULL マッピングが使用されていたはずのすべての場所に同じページを繰り返しマップすることで、この制限を回避することが推奨されます。テクスチャのミップマップ レベルのサイズがその形式の標準タイル形状の整数倍である場合、パックされていないことが保証されます。 |
| D3D12\_TILED\_RESOURCES\_TIER\_2 | Tier\_1 機能のスーパーセットがサポートされていることを示します。次の追加サポートを含みます:   <ul> <li>テクスチャのミップマップ レベルのサイズがその形式に対して少なくとも 1 つの標準タイル形状であるとき、そのミップマップ レベルはパックされていないことが保証されます。詳細については、[D3D12\_PACKED\_MIP\_INFO](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_packed_mip_info_public.md) を参照してください。 </li> <li>詳細レベル (LOD) のクランプおよびシェーダー操作の状態取得のためのシェーダー命令が利用可能です。これらのシェーダー命令の 1 つに関する情報については、[Sample(S,float,int,float,uint)](https://learn.microsoft.com/en-us/windows/desktop/direct3dhlsl/sample-s-float--int-uint-) を参照してください。 </li> <li>**NULL** マップされたタイルからの読み取りは、サンプリングされた値をゼロとして扱います。**NULL** マップされたタイルへの書き込みは破棄されます。 </li> </ul> フィーチャー レベル 12\_0 をサポートするアダプターはすべて TIER\_2 以上をサポートします。 |
| D3D12\_TILED\_RESOURCES\_TIER\_3 | Tier 2 のスーパーセットがサポートされ、さらに 3D テクスチャ ([ボリューム タイル リソース](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/volume-tiled-resources)) がサポートされることを示します。 |
| D3D12\_TILED\_RESOURCES\_TIER\_4 | |

## 解説

この列挙型は [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options_public.md) 構造体で使用されます。

タイル リソース機能では、次の 3 つの個別の機能がまとめられています。

<ul>
  <li>
    近接するテクセル アドレスが近接するデータ座標を含むタイル ベースのテクスチャ レイアウト オプション。
    テクセルのタイルには、リソースの各基本次元でほぼ同じ数のテクセルが含まれます。
    このレイアウトは D3D12 では [D3D12\_TEXTURE\_LAYOUT\_64KB\_UNDEFINED\_SWIZZLE](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12_x/enums/d3d12_texture_layout.md) で表されます。
  </li>

  <li>
    リソース用の仮想アドレス空間の領域を予約し、各ページは最初は NULL マップされます。
    D3D12 では、この操作は [ID3D12Device::CreateReservedResource](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createreservedresource_public.md) にカプセル化されています。
    これは、D3D12\_TEXTURE\_LAYOUT\_64KB\_UNDEFINED\_SWIZZLE レイアウトを持つテクスチャでのみ動作します。
  </li>

  <li>
    ページ マッピングを変更し、タイル粒度でテクスチャ データを操作する機能。
    D3D12 では、これらの操作は
    [ID3D12CommandQueue::UpdateTileMappings](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12commandqueue/methods/id3d12commandqueue_updatetilemappings_public.md)、
    [ID3D12CommandQueue::CopyTileMappings](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12commandqueue/methods/id3d12commandqueue_copytilemappings_public.md)、および
    [ID3D12GraphicsCommandList::CopyTiles](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist/methods/id3d12graphicscommandlist_copytiles_public.md) です。
  </li>
</ul>

D3D11 と比較した 3 つの重要な変更点:

<ul>
  <li>
    タイル プールはヒープに置き換えられます。
    ヒープは D3D11 のタイル プールが提供する機能のスーパーセットを提供します。
  </li>

  <li>
    予約済みリソースは、同時に複数のヒープからのページにマップできます。
    非 NULL マップされたページはすべて同じヒープから来る必要があるという D3D11 の制限はありません。
  </li>

  <li>
    アプリケーションは GPU 仮想アドレス機能を認識する必要があります。これにより、特定の使用シナリオに対するリトマス試験が可能になります。
    [D3D12\_FEATURE\_GPU\_VIRTUAL\_ADDRESS\_SUPPORT](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_feature_public.md) を参照してください。
  </li>
</ul>

## 要件

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

## 関連項目

[コア列挙型](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/direct3d-12-enumerations)


## Related topics

- [D3D12_FEATURE_DATA_D3D12_OPTIONS5](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options5_public.md)
- [D3D12_FEATURE_DATA_D3D12_OPTIONS](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options_public.md)
- [D3D12_TILED_RESOURCE_COORDINATE](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/structs/d3d12_tiled_resource_coordinate_public.md)
- [D3D12_RESOURCE_BINDING_TIER](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_resource_binding_tier_public.md)
- [D3D12_RESOURCE_HEAP_TIER](https://devdocs.xbox.com/ja-jp/reference/graphics/d3d12/enums/d3d12_resource_heap_tier_public.md)
