Método ID3D11Device3::CreateTexture3D1 (d3d11_3.h)

Cria uma textura 3D.

Sintaxe

HRESULT CreateTexture3D1(
  [in]            const D3D11_TEXTURE3D_DESC1  *pDesc1,
  [in, optional]  const D3D11_SUBRESOURCE_DATA *pInitialData,
  [out, optional] ID3D11Texture3D1             **ppTexture3D
);

Parâmetros

[in] pDesc1

Tipo: const D3D11_TEXTURE3D_DESC1*

Um ponteiro para uma estrutura de D3D11_TEXTURE3D_DESC1 que descreve um recurso de textura 3D. Para criar um recurso sem tipo que pode 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 3D. 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 outra maneira antes que o recurso seja lido.

Você pode determinar o tamanho dessa matriz do valor no membro MipLevels da estrutura D3D11_TEXTURE3D_DESC1 à qual pDesc1 aponta. Não há suporte para matrizes de texturas de volume 3D.

Para obter mais informações sobre esse tamanho de matriz, consulte Comentários.

[out, optional] ppTexture3D

Tipo: ID3D11Texture3D1**

Um ponteiro para um bloco de memória que recebe um ponteiro para uma interface ID3D11Texture3D1 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 pela validação).

Valor retornado

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

CreateTexture3D1 cria um recurso de textura 3D, que pode conter um número de sub-recursos 3D. O número de texturas é 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.

Cada elemento de pInitialData fornece todas as fatias definidas para um determinado miplevel. Por exemplo, para uma textura de volume de 32 x 32 x 4 com uma cadeia de mipmap completa, a matriz tem os seguintes 6 elementos:

  • pInitialData[0] = 32x32 com 4 fatias
  • pInitialData[1] = 16x16 com 2 fatias
  • pInitialData[2] = 8x8 com 1 fatia
  • pInitialData[3] = 4x4 com 1 fatia
  • pInitialData[4] = 2x2 com 1 fatia
  • pInitialData[5] = 1x1 com 1 fatia

Requisitos

   
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

Confira também

ID3D11Device3