Partager via


Méthode IDirect3DDevice9 ::SetDepthStencilSurface (d3d9.h)

Définit la surface du gabarit de profondeur.

Syntaxe

HRESULT SetDepthStencilSurface(
  [in] IDirect3DSurface9 *pNewZStencil
);

Paramètres

[in] pNewZStencil

Type : IDirect3DSurface9*

Adresse d’un pointeur vers une interface IDirect3DSurface9 représentant la surface de gabarit de profondeur. La définition de cette valeur sur NULL désactive l’opération de gabarit de profondeur.

Valeur retournée

Type : HRESULT

Si la méthode réussit, la valeur de retour est D3D_OK. Si pZStencilSurface est autre que NULL, la valeur de retour est D3DERR_INVALIDCALL lorsque la surface de gabarit n’est pas valide.

Remarques

Les restrictions relatives à l’utilisation de cette méthode sont les suivantes :

  • Le type d’échantillonnage multiple doit être le même pour la cible de rendu et la surface de gabarit de profondeur.
  • Les formats doivent être compatibles pour la cible de rendu et la surface du gabarit de profondeur. Consultez IDirect3D9 ::CheckDepthStencilMatch.
  • La taille de la surface du gabarit de profondeur doit être supérieure ou égale à la taille de la cible de rendu.
Ces restrictions sont validées uniquement lors de l’utilisation du runtime de débogage lorsque l’une des méthodes IDirect3DDevice9Draw est appelée.

Les textures de cube diffèrent des autres surfaces en ce qu’il s’agit de collections de surfaces. Pour appeler IDirect3DDevice9 ::SetDepthStencilSurface avec une texture de cube, vous devez sélectionner un visage individuel à l’aide de IDirect3DCubeTexture9 ::GetCubeMapSurface et passer la surface résultante à IDirect3DDevice9 ::SetDepthStencilSurface.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête d3d9.h (inclure D3D9.h)
Bibliothèque D3D9.lib

Voir aussi

IDirect3DDevice9

IDirect3DDevice9 ::GetDepthStencilSurface