Partager via


IDirect3DDevice9::Clear, méthode (d3d9helper.h)

Efface une ou plusieurs surfaces telles qu’une cible de rendu, plusieurs cibles de rendu, une mémoire tampon de gabarit et une mémoire tampon de profondeur.

Syntaxe

HRESULT Clear(
  [in] DWORD         Count,
  [in] const D3DRECT *pRects,
  [in] DWORD         Flags,
  [in] D3DCOLOR      Color,
  [in] float         Z,
  [in] DWORD         Stencil
);

Paramètres

[in] Count

Type : DWORD

Nombre de rectangles dans le tableau à pRects. Doit être défini sur 0 si pRects a la valeur NULL. Peut ne pas être 0 si pRects est un pointeur valide.

[in] pRects

Type : const D3DRECT*

Pointeur vers un tableau de structures D3DRECT qui décrivent les rectangles à effacer. Définissez un rectangle sur les dimensions de la cible de rendu pour effacer toute la surface. Chaque rectangle utilise des coordonnées d’écran qui correspondent aux points sur la cible de rendu. Les coordonnées sont coupées aux limites du rectangle de fenêtre d’affichage. Pour indiquer que l’intégralité du rectangle de la fenêtre d’affichage doit être effacée, définissez ce paramètre sur NULL et Count sur 0.

[in] Flags

Type : DWORD

Combinaison d’un ou de plusieurs indicateurs D3DCLEAR qui spécifient la ou les surfaces à effacer.

[in] Color

Type : D3DCOLOR

Effacez une cible de rendu sur cette couleur ARGB.

[in] Z

Type : float

Effacez la mémoire tampon de profondeur pour cette nouvelle valeur z qui est comprise entre 0 et 1. Consultez la section Remarques.

[in] Stencil

Type : DWORD

Effacez la mémoire tampon de gabarit sur cette nouvelle valeur qui est comprise entre 0 et 2ⁿ-1 (n est la profondeur de bits de la mémoire tampon de gabarit). Consultez la section Remarques.

Valeur retournée

Type : HRESULT

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

Notes

Utilisez cette méthode pour effacer une surface, y compris : une cible de rendu, toutes les cibles de rendu dans un MRT, une mémoire tampon de gabarit ou une mémoire tampon de profondeur. Les indicateurs déterminent le nombre de surfaces effacées. Utilisez pRects pour effacer un sous-ensemble d’une surface définie par un tableau de rectangles.

IDirect3DDevice9::Clear échoue si vous :

  • Essayez d’effacer la mémoire tampon de profondeur ou la mémoire tampon de gabarit d’une cible de rendu qui n’a pas de mémoire tampon de profondeur attachée.
  • Essayez d’effacer la mémoire tampon de gabarit lorsque la mémoire tampon de profondeur ne contient pas de données de gabarit.

Spécifications

   
Plateforme cible Windows
En-tête d3d9helper.h (inclure D3D9.h)
Bibliothèque D3D9.lib

Voir aussi

IDirect3DDevice9