Flags used to configure Direct3D 12 memory heap properties.
More...
#include <MemoryAllocatorD3D12.h>
|
| enum | Enum : StorageType {
Shared = 0x00000001
, DenyBuffers = 0x00000004
, AllowDisplay = 0x00000008
, SharedCrossAdapter = 0x00000020
,
DenyRenderTargetAndDepthStencilTextures = 0x00000040
, DenyNonRenderTargetAndDepthStencilTextures = 0x00000080
, HardwareProtected = 0x00000100
, AllowWriteWatch = 0x00000200
,
AllowShaderAtomics = 0x00000400
, CreateNotResident = 0x00000800
, CreateNotZeroed = 0x00001000
, ToolsUseManualWriteTracking = 0x00002000
,
AllowOnlyBuffers = 0x000000C0
, AllowOnlyNonDisplayableTextures = 0x000000D0
, AllowOnlyDisplayableTextures = 0x000000B0
, Default = 0U
} |
|
using | StorageType = xiiUInt32 |
Flags used to configure Direct3D 12 memory heap properties.
◆ Enum
| Enumerator |
|---|
| Shared | Heap can be shared between multiple devices (e.g., for cross-adapter sharing).
|
| DenyBuffers | Heap cannot be used for buffers (e.g., vertex/index buffers).
|
| AllowDisplay | Heap can be used for displayable resources (e.g., swap chain buffers).
|
| SharedCrossAdapter | Heap can be shared across multiple adapters (e.g., for multi-GPU setups).
|
| DenyRenderTargetAndDepthStencilTextures | Heap cannot be used for render target or depth stencil textures.
|
| DenyNonRenderTargetAndDepthStencilTextures | Heap cannot be used for non-render target and non-depth stencil textures (e.g., regular textures).
|
| HardwareProtected | Heap is hardware protected (e.g., for secure video decoding).
|
| AllowWriteWatch | Heap supports write-watch functionality for tracking modified memory pages.
|
| AllowShaderAtomics | Heap supports shader atomic operations (e.g., for UAVs with atomic counters).
|
| CreateNotResident | Heap is created in a non-resident state and must be made resident before use.
|
| CreateNotZeroed | Heap memory is not zero-initialized upon allocation (use with care to avoid uninitialized memory).
|
| ToolsUseManualWriteTracking | Heap is used by tools with manual write tracking; requires explicit synchronization for CPU writes.
|
| AllowOnlyBuffers | Heap can only be used for buffers (combination of DenyBuffers and DenyNonRenderTargetAndDepthStencilTextures).
|
| AllowOnlyNonDisplayableTextures | Heap can only be used for non-displayable textures (combination of DenyBuffers and AllowDisplay).
|
| AllowOnlyDisplayableTextures | Heap can only be used for displayable textures (combination of DenyBuffers and DenyNonRenderTargetAndDepthStencilTextures).
|
| Default | No special flags; heap can be used for any resource type.
|
The documentation for this struct was generated from the following file: