Função D3DXFilterTexture
Filtra os níveis de mipmap de uma textura.
Sintaxe
HRESULT D3DXFilterTexture(
_In_ LPDIRECT3DBASETEXTURE9 pBaseTexture,
_Out_ const PALETTEENTRY *pPalette,
_In_ UINT SrcLevel,
_In_ DWORD MipFilter
);
Parâmetros
-
pBaseTexture [in]
-
Tipo: LPDIRECT3DBASETEXTURE9
Ponteiro para uma interface IDirect3DBaseTexture9 que representa o objeto de textura a ser filtrado.
-
pPalette [out]
-
Tipo: const PALETTEENTRY*
Ponteiro para uma estrutura PALETTEENTRY que representa uma paleta de 256 cores a ser preenchida ou NULL para formatos não armazenados. Se uma paleta não for especificada, a paleta direct3D padrão (uma paleta de brancos opaca) será fornecida. Consulte Observações.
-
SrcLevel [in]
-
Tipo: UINT
Nível cuja imagem é usada para gerar os níveis subsequentes. Especificar D3DX_DEFAULT para esse parâmetro é equivalente a especificar 0.
-
MipFilter [in]
-
Tipo: DWORD
Combinação de uma ou mais D3DX_FILTER controlar como o mipmap é filtrado. Especificar D3DX_DEFAULT para esse parâmetro é o equivalente a especificar D3DX_FILTER_BOX se o tamanho da textura for uma potência de dois e D3DX_FILTER_BOX | D3DX_FILTER_DITHER caso contrário.
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_INVALIDCALL, D3DXERR_INVALIDDATA.
Comentários
Um filtro é aplicado recursivamente a cada nível de textura para gerar o próximo nível de textura.
Gravar em uma superfície sem nível zero da textura não fará com que o retângulo sujo seja atualizado. Se D3DXFilterTexture for chamado e a superfície ainda não estiver sujo (isso é improvável em cenários de uso normal), o aplicativo precisará chamar explicitamente AddDirtyRect na textura.
Texturas criadas no pool padrão (D3DPOOL_DEFAULT) não podem ser usadas com D3DXFilterTexture (a menos que criadas com D3DUSAGE_DYNAMIC) porque uma operação de bloqueio é necessária no objeto . Observe que os bloqueios são proibidos em texturas no pool padrão (a menos que sejam dinâmicos).
Para obter detalhes sobre PALETTEENTRY, consulte o SDK da plataforma. Observe que, a partir do DirectX 8.0, o membro peFlags da estrutura PALETTEENTRY não funciona conforme documentado no SDK da Plataforma. O membro peFlags agora é o canal alfa para formatos palettizados de 8 bits.
Há apenas uma função de filtragem de textura, mas duas macros que chamam esse método.
#define D3DXFilterCubeTexture D3DXFilterTexture
#define D3DXFilterVolumeTexture D3DXFilterTexture
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|
Confira também