Método IDirect3DDevice9::CreateTexture (d3d9helper.h)

Cria um recurso de textura.

Sintaxe

HRESULT CreateTexture(
  [in]          UINT              Width,
  [in]          UINT              Height,
  [in]          UINT              Levels,
  [in]          DWORD             Usage,
  [in]          D3DFORMAT         Format,
  [in]          D3DPOOL           Pool,
  [out, retval] IDirect3DTexture9 **ppTexture,
  [in]          HANDLE            *pSharedHandle
);

Parâmetros

[in] Width

Tipo: UINT

Largura do nível superior da textura, em pixels. As dimensões de pixel dos níveis subsequentes serão o valor truncado de metade da dimensão de pixel do nível anterior (independentemente). Cada dimensão é fixada em um tamanho de 1 pixel. Assim, se a divisão por 2 resultar em 0, 1 será tomada em vez disso.

[in] Height

Tipo: UINT

Altura do nível superior da textura, em pixels. As dimensões de pixel dos níveis subsequentes serão o valor truncado de metade da dimensão de pixel do nível anterior (independentemente). Cada dimensão é fixada em um tamanho de 1 pixel. Assim, se a divisão por 2 resultar em 0, 1 será tomada em vez disso.

[in] Levels

Tipo: UINT

Número de níveis na textura. Se for zero, o Direct3D gerará todos os subnível de textura até 1 por 1 pixels para hardware que dá suporte a texturas mipmapped. Chame IDirect3DBaseTexture9::GetLevelCount para ver o número de níveis gerados.

[in] Usage

Tipo: DWORD

O uso pode ser 0, o que indica nenhum valor de uso. No entanto, se o uso for desejado, use uma combinação de uma ou mais constantes D3DUSAGE . É uma boa prática corresponder o parâmetro de uso com os sinalizadores de comportamento em IDirect3D9::CreateDevice.

[in] Format

Tipo: D3DFORMAT

Membro do D3DFORMAT tipo enumerado, descrevendo o formato de todos os níveis na textura.

[in] Pool

Tipo: D3DPOOL

Membro do D3DPOOL tipo enumerado, descrevendo a classe de memória na qual a textura deve ser colocada.

[out, retval] ppTexture

Tipo: IDirect3DTexture9**

Ponteiro para uma interface IDirect3DTexture9 , representando o recurso de textura criado.

[in] pSharedHandle

Tipo: HANDLE*

Reservado. Defina esse parâmetro como NULL. Esse parâmetro pode ser usado no Direct3D 9 para o Windows Vista compartilhar recursos.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, o valor retornado será D3D_OK. Se o método falhar, o valor retornado poderá ser um dos seguintes: D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY.

Comentários

Um aplicativo pode descobrir o suporte para a Geração Automática de Mipmaps (Direct3D 9) em um formato específico chamando IDirect3D9::CheckDeviceFormat com D3DUSAGE_AUTOGENMIPMAP. Se IDirect3D9::CheckDeviceFormat retornar D3DOK_NOAUTOGEN, IDirect3DDevice9::CreateTexture terá êxito, mas retornará uma textura de um nível.

No Windows Vista CreateTexture pode criar uma textura de um ponteiro de memória do sistema, permitindo ao aplicativo mais flexibilidade sobre o uso, alocação e exclusão da memória do sistema. Por exemplo, um aplicativo pode passar um ponteiro de bitmap de memória do sistema GDI e obter uma interface de textura Direct3D em torno dele. O uso de um ponteiro de memória do sistema com CreateTexture tem as seguintes restrições.

  • O tom da textura deve ser igual à largura multiplicada pelo número de bytes por pixel.
  • Há suporte apenas para texturas com um único nível de mipmap. O argumento Levels deve ser 1.
  • O argumento Pool deve ser D3DPOOL_SYSTEMMEM.
  • O argumento pSharedHandle deve ser um ponteiro válido para um buffer que possa conter o ponto de memória do sistema; *pSharedHandle deve ser um ponteiro válido para a memória do sistema com um tamanho em bytes de largura da textura * altura da textura * bytes por pixel do formato de textura.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d9helper.h (inclua D3D9.h)
Biblioteca D3D9.lib

Confira também

D3DXCreateTexture

D3DXCreateTextureFromFile

D3DXCreateTextureFromFileEx

D3DXCreateTextureFromFileInMemory

D3DXCreateTextureFromFileInMemoryEx

D3DXCreateTextureFromResource

D3DXCreateTextureFromResourceEx

IDirect3DDevice9