Método ID3D11Device3::CreateTexture2D1 (d3d11_3.h)
Cria uma textura 2D.
Sintaxe
HRESULT CreateTexture2D1(
[in] const D3D11_TEXTURE2D_DESC1 *pDesc1,
[in, optional] const D3D11_SUBRESOURCE_DATA *pInitialData,
[out, optional] ID3D11Texture2D1 **ppTexture2D
);
Parâmetros
[in] pDesc1
Tipo: const D3D11_TEXTURE2D_DESC1*
Um ponteiro para uma estrutura D3D11_TEXTURE2D_DESC1 que descreve um recurso de textura 2D. Para criar um recurso sem tipo que possa ser interpretado em runtime em formatos diferentes e compatíveis, especifique um formato sem tipo na descrição da textura. Para gerar níveis de mipmap automaticamente, defina o número de níveis de mipmap como 0.
[in, optional] pInitialData
Tipo: const D3D11_SUBRESOURCE_DATA*
Um ponteiro para uma matriz de estruturas de D3D11_SUBRESOURCE_DATA que descrevem sub-recursos para o recurso de textura 2D. Os aplicativos não podem especificar NULL para pInitialData ao criar recursos IMMUTABLE (consulte D3D11_USAGE). Se o recurso for multisampled, pInitialData deverá ser NULL porque recursos multisampled não podem ser inicializados com dados quando são criados.
Se você não passar nada para pInitialData, o conteúdo inicial da memória do recurso será indefinido. Nesse caso, você precisa gravar o conteúdo do recurso de alguma outra maneira antes que o recurso seja lido.
Você pode determinar o tamanho dessa matriz de valores nos membros MipLevels e ArraySize da estrutura D3D11_TEXTURE2D_DESC1 para a qual pDesc1 aponta usando o seguinte cálculo:
MipLevels * ArraySize
Para obter mais informações sobre esse tamanho de matriz, consulte Comentários.
[out, optional] ppTexture2D
Tipo: ID3D11Texture2D1**
Um ponteiro para um bloco de memória que recebe um ponteiro para uma interface ID3D11Texture2D1 para a textura criada. Defina esse parâmetro como NULL para validar os outros parâmetros de entrada (o método retornará S_FALSE se os outros parâmetros de entrada passarem na validação).
Retornar valor
Tipo: HRESULT
Se o método for bem-sucedido, o código de retorno será S_OK. Consulte Códigos de retorno do Direct3D 11 para obter códigos de erro com falha.
Comentários
CreateTexture2D1 cria um recurso de textura 2D, que pode conter vários sub-recursos 2D. O número de sub-recursos é especificado na descrição da textura. Todas as texturas em um recurso devem ter o mesmo formato, tamanho e número de níveis de mipmap.
Todos os recursos são compostos por um ou mais sub-recursos. Para carregar dados na textura, os aplicativos podem fornecer os dados inicialmente como uma matriz de estruturas D3D11_SUBRESOURCE_DATA apontadas por pInitialData ou podem usar uma das funções de textura D3DX, como D3DX11CreateTextureFromFile.
Para uma textura de 32 x 32 com uma cadeia de mipmap completa, a matriz pInitialData tem os seguintes 6 elementos:
- pInitialData[0] = 32x32
- pInitialData[1] = 16x16
- pInitialData[2] = 8x8
- pInitialData[3] = 4x4
- pInitialData[4] = 2x2
- pInitialData[5] = 1x1
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2016 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | d3d11_3.h |
Biblioteca | D3D11.lib |