Partager via


D3DXComputeNormalMap, fonction

Convertit une carte de hauteur en carte normale. Les composants (x,y,z) de chaque normale sont mappés aux canaux (r,g,b) de la texture de sortie.

Syntaxe

HRESULT D3DXComputeNormalMap(
  _Out_       LPDIRECT3DTEXTURE9 pTexture,
  _In_        LPDIRECT3DTEXTURE9 pSrcTexture,
  _In_  const PALETTEENTRY       *pSrcPalette,
  _In_        DWORD              Flags,
  _In_        DWORD              Channel,
  _In_        FLOAT              Amplitude
);

Paramètres

pTexture [out]

Type : LPDIRECT3DTEXTURE9

Pointeur vers une interface IDirect3DTexture9 , représentant la texture de destination.

pSrcTexture [in]

Type : LPDIRECT3DTEXTURE9

Pointeur vers une interface IDirect3DTexture9 , représentant la texture de mappage de hauteur source.

pSrcPalette [in]

Type : const PALETTEENTRY*

Pointeur vers un type PALETTEENTRY qui contient la palette source de 256 couleurs ou NULL.

Indicateurs [in]

Type : DWORD

Un ou plusieurs indicateurs D3DX_NORMALMAP qui contrôlent la génération de cartes normales.

Canal [in]

Type : DWORD

Un D3DX_CHANNEL indicateur spécifiant la source des informations de hauteur.

Amplitude [in]

Type : FLOAT

Multiplicateur de valeur constante qui augmente (ou diminue) les valeurs dans la carte normale. Les valeurs plus élevées rendent généralement les bosses plus visibles, les valeurs inférieures rendent généralement les bosses moins visibles.

Valeur retournée

Type : HRESULT

Si la fonction réussit, la valeur de retour est D3D_OK. Si la fonction échoue, la valeur de retour peut être la valeur suivante : D3DERR_INVALIDCALL.

Notes

Cette méthode calcule la normale en utilisant la différence centrale avec une taille de noyau de 3x3. Le dénominateur de différenciation central utilisé est 2.0. Les canaux RVB dans la destination contiennent des composants biaisés (x,y,z) de la normale.

Spécifications

Condition requise Valeur
En-tête
D3dx9tex.h
Bibliothèque
D3dx9.lib

Voir aussi

Fonctions de texture dans D3DX 9