Función D3DXFilterTexture
Filtra los niveles de mapa mip de una textura.
Sintaxis
HRESULT D3DXFilterTexture(
_In_ LPDIRECT3DBASETEXTURE9 pBaseTexture,
_Out_ const PALETTEENTRY *pPalette,
_In_ UINT SrcLevel,
_In_ DWORD MipFilter
);
Parámetros
-
pBaseTexture [in]
-
Tipo: LPDIRECT3DBASETEXTURE9
Puntero a una interfaz IDirect3DBaseTexture9 que representa el objeto de textura que se va a filtrar.
-
pPalette [out]
-
Tipo: const PALETTEENTRY*
Puntero a una estructura PALETTEENTRY que representa una paleta de 256 colores que se va a rellenar o NULL para formatos no autenticados. Si no se especifica una paleta, se proporciona la paleta predeterminada de Direct3D (una paleta blanca opaca). Vea la sección Comentarios.
-
SrcLevel [in]
-
Tipo: UINT
Nivel cuya imagen se usa para generar los niveles posteriores. Especificar D3DX_DEFAULT para este parámetro equivale a especificar 0.
-
MipFilter [in]
-
Tipo: DWORD
Combinación de uno o varios D3DX_FILTER controlar cómo se filtra el mapa mip. Especificar D3DX_DEFAULT para este parámetro es equivalente a especificar D3DX_FILTER_BOX si el tamaño de textura es una potencia de dos y D3DX_FILTER_BOX | D3DX_FILTER_DITHER de lo contrario.
Valor devuelto
Tipo: HRESULT
Si la función se ejecuta correctamente, el valor devuelto es D3D_OK. Si se produce un error en la función, el valor devuelto puede ser uno de los siguientes: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA.
Comentarios
Un filtro se aplica recursivamente a cada nivel de textura para generar el siguiente nivel de textura.
Escribir en una superficie que no sea de nivel cero de la textura no hará que se actualice el rectángulo sucio. Si se llama a D3DXFilterTexture y la superficie aún no estaba desfasada (esto es poco probable en escenarios de uso normales), la aplicación debe llamar explícitamente a AddDirtyRect en la textura.
Las texturas creadas en el grupo predeterminado (D3DPOOL_DEFAULT) no se pueden usar con D3DXFilterTexture (a menos que se cree con D3DUSAGE_DYNAMIC) porque se necesita una operación de bloqueo en el objeto . Tenga en cuenta que los bloqueos están prohibidos en las texturas del grupo predeterminado (a menos que sean dinámicos).
Para más información sobre PALETTEENTRY, consulte el SDK de plataforma. Tenga en cuenta que, a partir de DirectX 8.0, el miembro peFlags de la estructura PALETTEENTRY no funciona como se documenta en el SDK de plataforma. El miembro peFlags ahora es el canal alfa para formatos palettizados de 8 bits.
Solo hay una función de filtrado de texturas, pero dos macros que llaman a este método.
#define D3DXFilterCubeTexture D3DXFilterTexture
#define D3DXFilterVolumeTexture D3DXFilterTexture
Requisitos
Requisito | Value |
---|---|
Encabezado |
|
Biblioteca |
|
Consulte también