Função D3DXCreateTextureFromFile

Cria uma textura de um arquivo.

Sintaxe

HRESULT D3DXCreateTextureFromFile(
  _In_  LPDIRECT3DDEVICE9  pDevice,
  _In_  LPCTSTR            pSrcFile,
  _Out_ LPDIRECT3DTEXTURE9 *ppTexture
);

Parâmetros

pDevice [in]

Tipo: LPDIRECT3DDEVICE9

Ponteiro para uma interface IDirect3DDevice9 , representando o dispositivo a ser associado à textura.

pSrcFile [in]

Tipo: LPCTSTR

Ponteiro para uma cadeia de caracteres que especifica o nome do arquivo. Se as configurações do compilador exigirem Unicode, o tipo de dados LPCTSTR será resolvido para LPCWSTR. Caso contrário, o tipo de dados de cadeia de caracteres é resolvido para LPCSTR. Consulte Observações.

ppTexture [out]

Tipo: LPDIRECT3DTEXTURE9*

Endereço de um ponteiro para uma interface IDirect3DTexture9 , representando o objeto de textura criado.

Valor retornado

Tipo: HRESULT

Se a função for bem-sucedida, o valor retornado será D3D_OK. Se a função falhar, o valor retornado poderá ser um dos seguintes: D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA E_OUTOFMEMORY.

Comentários

A configuração do compilador também determina a versão da função. Se Unicode for definido, a chamada de função será resolvida para D3DXCreateTextureFromFileW. Caso contrário, a chamada de função será resolvida para D3DXCreateTextureFromFileA porque cadeias de caracteres ANSI estão sendo usadas.

Essa função dá suporte aos seguintes formatos de arquivo: .bmp, .dds, .dib, .hdr, .jpg, .pfm, .png, .ppm e .tga. Consulte D3DXIMAGE_FILEFORMAT.

A função é equivalente a D3DXCreateTextureFromFileEx(pDevice, pSrcFile, D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_MANAGED, D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, ppTexture).

As texturas mipmapped têm automaticamente cada nível preenchido com a textura carregada.

Ao carregar imagens em texturas mipmapped, alguns dispositivos não conseguem acessar uma imagem 1x1 e essa função falhará. Se isso acontecer, as imagens precisarão ser carregadas manualmente.

Observe que um recurso criado com essa função será colocado na classe de memória indicada por D3DPOOL_MANAGED.

A filtragem é aplicada automaticamente a uma textura criada usando esse método. A filtragem é equivalente a D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER em D3DX_FILTER.

Para obter o melhor desempenho ao usar D3DXCreateTextureFromFile:

  1. Fazer o dimensionamento de imagens e formatar a conversão no tempo de carga pode ser lento. Armazene imagens no formato e resolução que serão usadas. Se o hardware de destino exigir poder de duas dimensões, crie e armazene imagens usando o poder de duas dimensões.
  2. Considere usar arquivos DDS (superfície DirectDraw). Como os arquivos DDS podem ser usados para representar qualquer formato de textura Direct3D 9, eles são muito fáceis de ler para o D3DX. Além disso, eles podem armazenar mipmaps, para que qualquer algoritmo de geração de mipmap possa ser usado para criar as imagens.

Requisitos

Requisito Valor
parâmetro
D3dx9tex.h
Biblioteca
D3dx9.lib

Confira também

D3DXCreateTextureFromFileEx

Funções de textura no D3DX 9