Sintaxe
typedef enum D3D12_TEXTURE_LAYOUT
{
D3D12_TEXTURE_LAYOUT_UNKNOWN = 0,
D3D12_TEXTURE_LAYOUT_ROW_MAJOR = 1,
D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE = 2,
D3D12_TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE = 3,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_0 = 0x100,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_1 = 0x101,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_2 = 0x102,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_3 = 0x103,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_4 = 0x104,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_UNC_DEPTH_5 = 0x105,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_UNC_DEPTH_6 = 0x106,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_UNC_DEPTH_7 = 0x107,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_LINEAR = 0x108,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_1D_DISPLAY = 0x109,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_DISPLAY = 0x10A,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_DISPLAY = 0x10B,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_2D_DISPLAY = 0x10C,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_1D_THIN = 0x10D,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_THIN = 0x10E,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_3D_THIN = 0x10F,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_1D_THIN = 0x110,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_2D_THIN = 0x111,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_3D_THIN = 0x112,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_1D_THICK = 0x113,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_THICK = 0x114,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_3D_THICK = 0x115,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_1D_THICK = 0x116,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_2D_THICK = 0x117,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_3D_THICK = 0x118,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_XTHICK = 0x119,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_3D_XTHICK = 0x11A,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_LINEAR_GENERAL = 0x11F,
D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_MASK = 0x11F,
} D3D12_TEXTURE_LAYOUT
Constantes
| Constante | Descrição |
|---|---|
| D3D12_TEXTURE_LAYOUT_UNKNOWN | O layout da textura é desconhecido. |
| D3D12_TEXTURE_LAYOUT_ROW_MAJOR | Os dados da textura são armazenados em ordem de linha principal (também conhecida como ordem pitch-linear). |
| D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE | Os layouts dentro de blocos de 64 KB e o empacotamento de mips finais ficam a critério do driver. Não há um padrão de swizzle padronizado. |
| D3D12_TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE | Uma textura padrão usa o padrão de swizzle padronizado. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_0 | O modo de bloco é COMP_DEPTH_0. A profundidade compactada é o modo normal de operação do hardware de profundidade/estêncil. Há diversas variantes de COMP_DEPTH, para tratar como a unidade de profundidade/estêncil processa buffers de estêncil com MSAA. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_1 | O modo de bloco é COMP_DEPTH_1. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_2 | O modo de bloco é COMP_DEPTH_2. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_3 | O modo de bloco é COMP_DEPTH_3. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_COMP_DEPTH_4 | O modo de bloco é COMP_DEPTH_4. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_UNC_DEPTH_5 | O modo de bloco é UNC_DEPTH_5. A profundidade não compactada não é usada pelo driver no momento. Há diversas variantes de UNC_DEPTH, para tratar como a unidade de profundidade/estêncil processa buffers de estêncil com MSAA. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_UNC_DEPTH_6 | O modo de bloco é UNC_DEPTH_6. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_UNC_DEPTH_7 | O modo de bloco é UNC_DEPTH_7. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_LINEAR | O modo de bloco é LINEAR. Não há microtiling nem macrotiling. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_1D_DISPLAY | O modo de bloco é 1D_DISPLAY. O microtiling de exibição é um microbloco 8x8x1 com um padrão otimizado para a varredura de saída da exibição. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_DISPLAY | O modo de bloco é 2D_DISPLAY. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_DISPLAY | O modo de bloco é TILED_DISPLAY. Use com recursos lado a lado do D3D. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_2D_DISPLAY | O modo de bloco é TILED_2D_DISPLAY. Use com recursos lado a lado do D3D. 2D serve para microtiling e macrotiling. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_1D_THIN | O modo de bloco é 1D_THIN. THIN significa que o modo de microtiling padrão é usado: microbloco 8x8x1. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_THIN | O modo de bloco é 2D_THIN. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_3D_THIN | O modo de bloco é 3D_THIN. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_1D_THIN | O modo de bloco é TILED_1D_THIN. Use com recursos lado a lado do D3D. 1D serve apenas para microtiling. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_2D_THIN | O modo de bloco é TILED_2D_THIN. Use com recursos lado a lado do D3D. 2D serve para microtiling e macrotiling. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_3D_THIN | O modo de bloco é TILED_3D_THIN. Use com recursos lado a lado do D3D. 3D são dois níveis de macrotiling mais microtiling. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_1D_THICK | O modo de bloco é 1D_THICK. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. THICK é um padrão de microtiling 8x8x4 e não é compatível com o uso de um destino de renderização ou de um estêncil de profundidade. XTHICK é um padrão de microtiling 8x8x8 e não é compatível com o uso de um destino de renderização ou de um estêncil de profundidade. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_THICK | O modo de bloco é 2D_THICK. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_3D_THICK | O modo de bloco é 3D_THICK. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_1D_THICK | O modo de bloco é TILED_1D_THICK e foi projetado para uso com recursos lado a lado do D3D. 1D serve apenas para microtiling. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_2D_THICK | O modo de bloco é TILED_2D_THICK. Use com recursos lado a lado do D3D. 2D serve para microtiling e macrotiling. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_TILED_3D_THICK | O modo de bloco é TILED_3D_THICK. Use com recursos lado a lado do D3D. 3D são dois níveis de macrotiling mais microtiling. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_2D_XTHICK | O modo de bloco é 2D_XTHICK. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_3D_XTHICK | O modo de bloco é 3D_XTHICK. THICK e XTHICK são padrões especiais de microtiling, projetados para uso com texturas de matriz e de volume, que o driver não usa no momento. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_LINEAR_GENERAL | O modo de bloco é LINEAR_GENERAL. Não há microtiling nem macrotiling. D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_LINEAR_GENERAL não é compatível com mipmaps; recomendamos usar D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_LINEAR em vez disso. |
| D3D12XBOX_TEXTURE_LAYOUT_TILE_MODE_MASK | Uma máscara de bits que corresponde aos bits usados para definir um layout de textura personalizado do XBOX (modo de bloco do XBOX). |
