estrutura D3D11_TEXTURE2D_DESC (d3d11.h)
Descreve uma textura 2D.
Sintaxe
typedef struct D3D11_TEXTURE2D_DESC {
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_TEXTURE2D_DESC;
Membros
Width
Largura da textura (em texels). O intervalo é de 1 a D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384). Para um mapa de cubo de textura, o intervalo é de 1 a D3D11_REQ_TEXTURECUBE_DIMENSION (16384). No entanto, o intervalo é, na verdade, restringido pelo nível de recurso no qual você cria o dispositivo de renderização. Para obter mais informações sobre restrições, consulte Comentários.
Height
Altura da textura (em texels). O intervalo é de 1 a D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384). Para um mapa de cubo de textura, o intervalo é de 1 a D3D11_REQ_TEXTURECUBE_DIMENSION (16384). No entanto, o intervalo é, na verdade, restringido pelo nível de recurso no qual você cria o dispositivo de renderização. Para obter mais informações sobre restrições, consulte Comentários.
MipLevels
O número máximo de níveis de mipmap na textura. Consulte as observações em D3D11_TEX1D_SRV. Use 1 para uma textura multiplatafa; ou 0 para gerar um conjunto completo de subtexturas.
ArraySize
Número de texturas na matriz de texturas. O intervalo é de 1 a D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (2048). Para um mapa de cubo de textura, esse valor é um múltiplo de 6 (ou seja, 6 vezes o valor no NumCubes membro de D3D11_TEXCUBE_ARRAY_SRV), e o intervalo é de 6 a 2046. Na verdade, o intervalo é restringido pelo nível de recurso no qual você cria o dispositivo de renderização. Para obter mais informações sobre restrições, consulte Comentários.
Format
Tipo: DXGI_FORMAT
Formato de textura (consulte DXGI_FORMAT).
SampleDesc
Tipo: DXGI_SAMPLE_DESC
Estrutura que especifica parâmetros multisampling para a textura. Consulte DXGI_SAMPLE_DESC.
Usage
Tipo: D3D11_USAGE
Valor que identifica como a textura deve ser lida e gravada. O valor mais comum é D3D11_USAGE_DEFAULT; consulte D3D11_USAGE para todos os valores possíveis.
BindFlags
Sinalizadores (consulte D3D11_BIND_FLAG) para associação a estágios de pipeline. Os sinalizadores podem ser combinados por um OR bit a bit.
CPUAccessFlags
Sinalizadores (consulte D3D11_CPU_ACCESS_FLAG) para especificar os tipos de acesso de CPU permitidos. Use 0 se o acesso à CPU não for necessário. Esses sinalizadores podem ser combinados com um OR bit a bit.
MiscFlags
Sinalizadores (consulte D3D11_RESOURCE_MISC_FLAG) que identificam outras opções de recurso menos comuns. Use 0 se nenhum desses sinalizadores se aplicar. Esses sinalizadores podem ser combinados usando um OR bit a bit. Para um mapa de cubo de textura, defina o sinalizador D3D11_RESOURCE_MISC_TEXTURECUBE. Matrizes de mapa de cubo (ou seja, ArraySize> 6) exigem nível de recurso D3D_FEATURE_LEVEL_10_1 ou superior.
Observações
Essa estrutura é usada em uma chamada para ID3D11Device::CreateTexture2D.
Além dessa estrutura, você também pode usar a estrutura derivada CD3D11_TEXTURE2D_DESC, que é definida em D3D11.h e se comporta como uma classe herdada, para ajudar a criar uma descrição de textura.
O dispositivo coloca algumas restrições de tamanho (deve ser múltiplos de um tamanho mínimo) para um recurso subsampledo, compactado em bloco ou em formato de bit.
O intervalo de tamanho de textura é determinado pelo nível de recurso em que você cria o dispositivo e não a versão da interface Do Microsoft Direct3D. Por exemplo, se você usar o hardware do Microsoft Direct3D 10 no nível de recurso 10 (D3D_FEATURE_LEVEL_10_0) e chamar D3D11CreateDevice para criar um ID3D11Device, você deverá restringir o tamanho máximo da textura para D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192) ao criar sua textura 2D.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | d3d11.h |