Funzione D3DXCreateTextureFromFile
Crea una trama da un file.
Sintassi
HRESULT D3DXCreateTextureFromFile(
_In_ LPDIRECT3DDEVICE9 pDevice,
_In_ LPCTSTR pSrcFile,
_Out_ LPDIRECT3DTEXTURE9 *ppTexture
);
Parametri
-
pDevice [in]
-
Tipo: LPDIRECT3DDEVICE9
Puntatore a un'interfaccia IDirect3DDevice9 che rappresenta il dispositivo da associare alla trama.
-
pSrcFile [in]
-
Tipo: LPCTSTR
Puntatore a una stringa che specifica il nome file. Se le impostazioni del compilatore richiedono Unicode, il tipo di dati LPCTSTR viene risolto in LPCWSTR. In caso contrario, il tipo di dati stringa viene risolto in LPCSTR. Vedere la sezione Osservazioni.
-
ppTexture [out]
-
Tipo: LPDIRECT3DTEXTURE9*
Indirizzo di un puntatore a un'interfaccia IDirect3DTexture9 che rappresenta l'oggetto trama creato.
Valore restituito
Tipo: HRESULT
Se la funzione ha esito positivo, il valore restituito viene D3D_OK. Se la funzione ha esito negativo, il valore restituito può essere uno dei seguenti: D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA E_OUTOFMEMORY.
Commenti
L'impostazione del compilatore determina anche la versione della funzione. Se è definito Unicode, la chiamata di funzione viene risolta in D3DXCreateTextureFromFileW. In caso contrario, la chiamata di funzione viene risolta in D3DXCreateTextureFromFileA perché vengono usate stringhe ANSI.
Questa funzione supporta i formati di file seguenti: .bmp, dds, dib, hdr, .jpg, pfm, .png, ppm e tga. Vedere D3DXIMAGE_FILEFORMAT.
La funzione equivale a D3DXCreateTextureFromFileEx(pDevice, pSrcFile, D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_MANAGED, D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, ppTexture).
Le trame mipmapped hanno automaticamente ogni livello riempito con la trama caricata.
Quando si caricano immagini in trame mipmapped, alcuni dispositivi non possono passare a un'immagine 1x1 e questa funzione avrà esito negativo. In questo caso, le immagini devono essere caricate manualmente.
Si noti che una risorsa creata con questa funzione verrà inserita nella classe di memoria indicata da D3DPOOL_MANAGED.
Il filtro viene applicato automaticamente a una trama creata usando questo metodo. Il filtro equivale a D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER in D3DX_FILTER.
Per ottenere prestazioni ottimali quando si usa D3DXCreateTextureFromFile:
- L'esecuzione del ridimensionamento delle immagini e della conversione del formato in fase di caricamento può essere lenta. Archiviare le immagini nel formato e nella risoluzione che verranno usate. Se l'hardware di destinazione richiede una potenza di due dimensioni, creare e archiviare le immagini usando la potenza di due dimensioni.
- È consigliabile usare file DDS (DirectDraw Surface). Poiché i file DDS possono essere usati per rappresentare qualsiasi formato di trama Direct3D 9, sono molto facili da leggere per D3DX. Inoltre, possono archiviare mipmap, in modo che qualsiasi algoritmo di generazione mipmap possa essere usato per creare le immagini.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche