Partager via


énumération D3D11_TEXTURE_LAYOUT (d3d11_3.h)

Spécifie les options de disposition de texture.

Syntax

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

Constantes

 
D3D11_TEXTURE_LAYOUT_UNDEFINED
Valeur : 0
La disposition de texture n’est pas définie et est sélectionnée par le pilote.
D3D11_TEXTURE_LAYOUT_ROW_MAJOR
Valeur : 1
Les données de la texture sont stockées dans l’ordre des lignes principales (parfois appelées pitch-linear).
D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE
Valeur : 2
Une texture par défaut utilise le modèle swizzle standardisé.

Remarques

Cette énumération contrôle le modèle swizzle des textures par défaut et active la prise en charge de la carte sur les textures par défaut. Les appelants doivent interroger D3D11_FEATURE_DATA_D3D11_OPTIONS2 pour s’assurer que chaque option est prise en charge.

Les formats swizzle standard s’appliquent à chaque segment de la taille d’une page, et les pages sont disposées dans un ordre linéaire les unes par rapport aux autres. Un modèle intercalé 16 bits définit la conversion de l’emplacement intrapage pré-swizzled à l’emplacement post-swizzled.

Modèles swizzle standard Pour le démontrer, considérez le format swizzle 32bpp ci-dessus. Cela est représenté par les masques entrelacés suivants, où les bits à gauche sont les plus significatifs.
UINT xBytesMask = 1010 1010 1000 1111
UINT yMask =      0101 0101 0111 0000

Pour calculer l’adresse swizzled, le code suivant peut être utilisé (où l’instruction _pdep_u32 est prise en charge) :

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

Configuration requise

Condition requise Valeur
En-tête d3d11_3.h

Voir aussi

Énumérations de ressources