Condividi tramite


enumerazione D3D11_TEXTURE_LAYOUT (d3d11_3.h)

Specifica le opzioni di layout delle trame.

Sintassi

typedef enum D3D11_TEXTURE_LAYOUT {
  D3D11_TEXTURE_LAYOUT_UNDEFINED = 0,
  D3D11_TEXTURE_LAYOUT_ROW_MAJOR = 1,
  D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE = 2
} ;

Costanti

 
D3D11_TEXTURE_LAYOUT_UNDEFINED
Valore: 0
Il layout della trama non è definito e viene selezionato dal driver.
D3D11_TEXTURE_LAYOUT_ROW_MAJOR
Valore: 1
I dati per la trama vengono archiviati in ordine principale di riga (talvolta definito lineare passo).
D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE
Valore: 2
Una trama predefinita usa il modello swizzle standardizzato.

Commenti

Questa enumerazione controlla il modello swizzle delle trame predefinite e abilita il supporto delle mappe nelle trame predefinite. I chiamanti devono eseguire query D3D11_FEATURE_DATA_D3D11_OPTIONS2 per assicurarsi che ogni opzione sia supportata.

I formati swizzle standard si applicano all'interno di ogni blocco di dimensioni di pagina e le pagine sono disposte in ordine lineare rispetto all'altro. Un modello interleave a 16 bit definisce la conversione dalla posizione pre-swizzled all'interno della pagina alla posizione post-swizzled.

Modelli swizzle standard Per dimostrare, considerare il formato swizzle 32bpp precedente. Questo è rappresentato dalle maschere interleave seguenti, dove i bit a sinistra sono più significativi.
UINT xBytesMask = 1010 1010 1000 1111
UINT yMask =      0101 0101 0111 0000

Per calcolare l'indirizzo swizzled, è possibile usare il codice seguente (dove è supportata l'istruzione _pdep_u32):

UINT swizzledOffset = resourceBaseOffset +
                      _pdep_u32(xOffset, xBytesMask) + 
                      _pdep_u32(yOffset, yBytesMask);

Requisiti

Requisito Valore
Intestazione d3d11_3.h

Vedi anche

Enumerazioni delle risorse