Flags to control copying into memory or filling memory.
typedef enum D3D12XBOX_COPY_FLAGS
{
D3D12XBOX_COPY_FLAG_NONE = 0x0,
D3D12XBOX_COPY_FLAG_RESUMMARIZE_HTILE = 0x10,
D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS_EXPAND_COLOR = 0x20,
D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS_EXPAND_DEPTH = 0x20,
D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS_EXPAND_STENCIL = 0x40,
D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS = 0x60,
D3D12XBOX_COPY_FLAG_FORCE_PROPAGATE_COLOR_CLEAR = 0x400,
D3D12XBOX_COPY_FLAG_FORCE_GATHER_COLOR_FMASK = 0x800,
D3D12XBOX_COPY_FLAG_FORCE_ELIMINATE_DCC = 0x1000,
D3D12XBOX_COPY_FLAG_COPY_DEPTH_SAMPLE_TO_RED = 0x80,
D3D12XBOX_COPY_FLAG_COPY_STENCIL_SAMPLE_TO_RED = 0x100,
D3D12XBOX_COPY_FLAG_COPY_STENCIL_SAMPLE_TO_GREEN = 0x180,
D3D12XBOX_COPY_FLAG_COPY_DEPTH_STENCIL_SAMPLES_TO_RED_GREEN = 0x200
} D3D12XBOX_COPY_FLAGS;
| Constant | Description |
|---|---|
| D3D12XBOX_COPY_FLAG_NONE | No flags. |
| D3D12XBOX_COPY_FLAG_RESUMMARIZE_HTILE | Used with depth/stencil resources, this flag forces the GPU to resummarize HTile meta-information from the base depth and stencil data of the given resource. |
| D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS_EXPAND_COLOR | Force the GPU to decompress a color (render target-based) resource. |
| D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS_EXPAND_DEPTH | Force the GPU to decompress a depth resource. |
| D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS_EXPAND_STENCIL | Force the GPU to decompress a stencil resource. |
| D3D12XBOX_COPY_FLAG_FORCE_DECOMPRESS | Force the GPU to decompress both depth and stencil in a resource. |
| D3D12XBOX_COPY_FLAG_FORCE_PROPAGATE_COLOR_CLEAR | Force the GPU to propagate color clear. |
| D3D12XBOX_COPY_FLAG_FORCE_GATHER_COLOR_FMASK | Force the GPU to gather the bit planes constituting a group of fmask fragment pointers into contiguous bit values for each sampler. This enables a shader to fetch from the fmask and determine the multisample indices to use in fetching the fragment colors for compressed texture reads. |
| D3D12XBOX_COPY_FLAG_FORCE_ELIMINATE_DCC | Force the GPU to decompress (eliminate) the delta color compressed blocks of a DCC surface. After elimination is complete, the DCC surface contains only uncompressed blocks. Only supported on XBox One X hardware. |
| D3D12XBOX_COPY_FLAG_COPY_DEPTH_SAMPLE_TO_RED | Copies sample 0 of a depth surface to the red values of a color surface. |
| D3D12XBOX_COPY_FLAG_COPY_STENCIL_SAMPLE_TO_RED | Copies sample 0 of a stencil surface to the red values of a color surface. |
| D3D12XBOX_COPY_FLAG_COPY_STENCIL_SAMPLE_TO_GREEN | Copies sample 0 of a stencil surface to the green values of a color surface. |
| D3D12XBOX_COPY_FLAG_COPY_DEPTH_STENCIL_SAMPLES_TO_RED_GREEN | Copies sample 0 of a depth surface to the red values of a color surface, and the sample 0 of a stencil surface to the green values of the same color surface. |
These flags make the driver copy a sample 0 of a depth or stencil surface to a color surface without decompressing. The destination color must be decompressed. This can be used for a quick sample-0 copy of depth/stencil into a color surface.
This enumeration is used by the following methods:
Header: Declared in d3d12_x.h.