estructura D3D11_TEXTURE2D_DESC1 (d3d11_3.h)

Describe una textura 2D.

Sintaxis

typedef struct D3D11_TEXTURE2D_DESC1 {
  UINT                 Width;
  UINT                 Height;
  UINT                 MipLevels;
  UINT                 ArraySize;
  DXGI_FORMAT          Format;
  DXGI_SAMPLE_DESC     SampleDesc;
  D3D11_USAGE          Usage;
  UINT                 BindFlags;
  UINT                 CPUAccessFlags;
  UINT                 MiscFlags;
  D3D11_TEXTURE_LAYOUT TextureLayout;
} D3D11_TEXTURE2D_DESC1;

Miembros

Width

Ancho de textura (en elementos de textura). El intervalo es de 1 a D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384). Para un mapa de cubo de textura, el intervalo va de 1 a D3D11_REQ_TEXTURECUBE_DIMENSION (16384). Sin embargo, el intervalo está limitado realmente por el nivel de característica en el que se crea el dispositivo de representación. Para obtener más información sobre las restricciones, vea Comentarios.

Height

Alto de textura (en elementos de textura). El intervalo es de 1 a D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384). Para un mapa de cubo de textura, el intervalo va de 1 a D3D11_REQ_TEXTURECUBE_DIMENSION (16384). Sin embargo, el intervalo está limitado realmente por el nivel de característica en el que se crea el dispositivo de representación. Para obtener más información sobre las restricciones, vea Comentarios.

MipLevels

Número máximo de niveles de mapa mip en la textura. Vea los comentarios en D3D11_TEX1D_SRV. Use 1 para una textura multimuestreo; o 0 para generar un conjunto completo de subtexturas.

ArraySize

Número de texturas de la matriz de texturas. El intervalo es de 1 a D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (2048). Para un mapa de cubo de textura, este valor es un múltiplo de 6 (es decir, 6 veces el valor en el miembro NumCubes de D3D11_TEXCUBE_ARRAY_SRV) y el intervalo es de 6 a 2046. El intervalo está limitado realmente por el nivel de característica en el que se crea el dispositivo de representación. Para obtener más información sobre las restricciones, vea Comentarios.

Format

Formato de textura (consulte DXGI_FORMAT).

SampleDesc

Estructura que especifica parámetros de muestreo múltiple para la textura. Consulte DXGI_SAMPLE_DESC.

Usage

Valor que identifica cómo se va a leer y escribir la textura. El valor más común es D3D11_USAGE_DEFAULT; consulte D3D11_USAGE para ver todos los valores posibles.

BindFlags

Marcas (consulte D3D11_BIND_FLAG) para enlazar a fases de canalización. Las marcas se pueden combinar mediante un OR bit a bit.

CPUAccessFlags

Marcas (consulte D3D11_CPU_ACCESS_FLAG) para especificar los tipos de acceso a la CPU permitidos. Use 0 si no se requiere acceso a la CPU. Estas marcas se pueden combinar con un OR bit a bit.

MiscFlags

Marcas (consulte D3D11_RESOURCE_MISC_FLAG) que identifican otras opciones de recursos menos comunes. Use 0 si no se aplica ninguna de estas marcas. Estas marcas se pueden combinar mediante un OR bit a bit. Para un mapa de cubo de textura, establezca la marca D3D11_RESOURCE_MISC_TEXTURECUBE . Las matrices de mapa de cubo (es decir, ArraySize> 6) requieren el nivel de característica D3D_FEATURE_LEVEL_10_1 o superior.

TextureLayout

Valor de tipo D3D11_TEXTURE_LAYOUT que identifica el diseño de la textura.

El parámetro TextureLayout selecciona el diseño real de la textura en memoria y el diseño visible para la aplicación mientras se asigna la textura. Es posible que estas marcas no se soliciten sin acceso a la CPU también solicitada.

No es válido establecer marcas de acceso de CPU en texturas predeterminadas sin establecer TextureLayout en un valor distinto de D3D11_TEXTURE_LAYOUT_UNDEFINED.

D3D11_TEXTURE_LAYOUT_ROW_MAJOR solo se pueden usar para crear texturas no multimuestreo con un único subrecurso (se admiten texturas YUV planar). Estas texturas solo se pueden usar como origen y destino de las operaciones de copia, y BindFlags debe ser cero.

D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE solo se pueden usar para crear texturas de galerías de símbolos no multimuestreo no multimuestreo.

Comentarios

Esta estructura se usa en una llamada a ID3D11Device3::CreateTexture2D1.

Además de esta estructura, también puede usar la estructura derivada CD3D11_TEXTURE2D_DESC1 , que se define en D3D11_3.h y se comporta como una clase heredada, para ayudar a crear una descripción de textura.

El dispositivo coloca algunas restricciones de tamaño (deben ser múltiplos de un tamaño mínimo) para un recurso de formato de bits, comprimido en bloques o submuestreo.

El intervalo de tamaño de textura viene determinado por el nivel de característica en el que se crea el dispositivo y no la versión de la interfaz de Microsoft Direct3D. Por ejemplo, si usa hardware de Microsoft Direct3D 10 en el nivel de característica 10 (D3D_FEATURE_LEVEL_10_0) y llama a D3D11CreateDevice para crear un id3D11Device, debe restringir el tamaño máximo de textura a D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192) al crear la textura 2D.

Requisitos

   
Encabezado d3d11_3.h

Consulte también

Estructuras de recursos