Funzione D3DXFilterTexture
Filtra i livelli mipmap di una trama.
Sintassi
HRESULT D3DXFilterTexture(
_In_ LPDIRECT3DBASETEXTURE9 pBaseTexture,
_Out_ const PALETTEENTRY *pPalette,
_In_ UINT SrcLevel,
_In_ DWORD MipFilter
);
Parametri
-
pBaseTexture [in]
-
Tipo: LPDIRECT3DBASETEXTURE9
Puntatore a un'interfaccia IDirect3DBaseTexture9 che rappresenta l'oggetto trama da filtrare.
-
pPalette [out]
-
Tipo: const PALETTEENTRY*
Puntatore a una struttura PALETTEENTRY che rappresenta una tavolozza a 256 colori da riempire o NULL per i formati non formattati. Se non viene specificata una tavolozza, viene fornita la tavolozza Direct3D predefinita (una tavolozza bianca opaca). Vedere la sezione Osservazioni.
-
SrcLevel [in]
-
Tipo: UINT
Livello di cui viene usata l'immagine per generare i livelli successivi. Specificare D3DX_DEFAULT per questo parametro equivale a specificare 0.
-
MipFilter [in]
-
Tipo: DWORD
Combinazione di uno o più D3DX_FILTER controllo del modo in cui viene filtrato il mipmap. Specificare D3DX_DEFAULT per questo parametro equivale a specificare D3DX_FILTER_BOX se la dimensione della trama è una potenza di due e D3DX_FILTER_BOX | D3DX_FILTER_DITHER in caso contrario.
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_INVALIDCALL, D3DXERR_INVALIDDATA.
Commenti
Un filtro viene applicato in modo ricorsivo a ogni livello di trama per generare il livello di trama successivo.
La scrittura in una superficie non di livello zero della trama non causerà l'aggiornamento del rettangolo dirty. Se viene chiamato D3DXFilterTexture e la superficie non era già dirty (probabilmente in scenari di utilizzo normali), l'applicazione deve chiamare in modo esplicito AddDirtyRect sulla trama.
Le trame create nel pool predefinito (D3DPOOL_DEFAULT) non possono essere usate con D3DXFilterTexture (a meno che non venga creato con D3DUSAGE_DYNAMIC) perché è necessaria un'operazione di blocco nell'oggetto. Si noti che i blocchi non sono consentiti per le trame nel pool predefinito (a meno che non siano dinamiche).
Per informazioni dettagliate su PALETTEENTRY, vedere Platform SDK. Si noti che a partire da DirectX 8.0, il membro peFlags della struttura PALETTEENTRY non funziona come documentato in Platform SDK. Il membro peFlags è ora il canale alfa per i formati palettizzati a 8 bit.
Esiste una sola funzione di filtro delle trame, ma due macro che chiamano questo metodo.
#define D3DXFilterCubeTexture D3DXFilterTexture
#define D3DXFilterVolumeTexture D3DXFilterTexture
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche