> ## 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_RESOURCE_HEAP_TIER

> Specifies which resource heap tier the hardware and driver support.

Specifies which resource heap tier the hardware and driver support.

## Syntax

```cpp theme={null}
typedef enum D3D12_RESOURCE_HEAP_TIER
{
    D3D12_RESOURCE_HEAP_TIER_1 = 1,
    D3D12_RESOURCE_HEAP_TIER_2 = 2
} D3D12_RESOURCE_HEAP_TIER
```

## Constants

| Constant                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| D3D12\_RESOURCE\_HEAP\_TIER\_1 | Indicates that heaps can only support resources from a single resource category. For the list of resource categories, see Remarks. In tier 1, these resource categories are mutually exclusive and cannot be used with the same heap. The resource category must be declared when creating a heap, using the correct [D3D12\_HEAP\_FLAGS](/reference/graphics/d3d12_x/enums/d3d12_heap_flags) enumeration constant. Applications cannot create heaps with flags that allow all three categories. |
| D3D12\_RESOURCE\_HEAP\_TIER\_2 | Indicates that heaps can support resources from all three categories. For the list of resource categories, see Remarks. In tier 2, these resource categories can be mixed within the same heap. Applications may create heaps with flags that allow all three categories; but are not required to do so. Applications may be written to support tier 1 and seamlessly run on tier 2.                                                                                                             |

## Remarks

This enum is used by the **ResourceHeapTier** member of the [D3D12\_FEATURE\_DATA\_D3D12\_OPTIONS](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options_public) structure.

This enum specifies which resource heap tier the hardware and driver support.
Lower tiers require more heap attribution than greater tiers.

Resources can be categorized into the following types:

<ul>
  <li>Buffers</li>
  <li>Non-render target & non-depth stencil textures</li>
  <li>Render target or depth stencil textures</li>
</ul>

## Requirements

**Header:** d3d12\_xs.h or d3d12\_x.h\
**Library:** d3d12\_xs.lib or d3d12\_x.lib\
**Supported Platforms**: XBOX Series consoles and XBOX One family

## See Also

[Core Enumerations](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/direct3d-12-enumerations)


## Related topics

- [D3D12_FEATURE_DATA_D3D12_OPTIONS](/reference/graphics/d3d12/structs/d3d12_feature_data_d3d12_options_public.md)
- [D3D12_HEAP_SERIALIZATION_TIER](/reference/graphics/d3d12/enums/d3d12_heap_serialization_tier_public.md)
- [D3D12_CROSS_NODE_SHARING_TIER](/reference/graphics/d3d12/enums/d3d12_cross_node_sharing_tier_public.md)
- [D3D12_RESOURCE_BINDING_TIER](/reference/graphics/d3d12/enums/d3d12_resource_binding_tier_public.md)
- [D3D12_HEAP_TYPE](/reference/graphics/d3d12/enums/d3d12_heap_type_public.md)
