Partager via


Méthode IDirect3DDevice9 ::CreateStateBlock (d3d9helper.h)

Crée un bloc d’état qui contient les valeurs de tous les états d’appareil, états liés au vertex ou états liés aux pixels.

Syntaxe

HRESULT CreateStateBlock(
  [in]          D3DSTATEBLOCKTYPE    Type,
  [out, retval] IDirect3DStateBlock9 **ppSB
);

Paramètres

[in] Type

Type : D3DSTATEBLOCKTYPE

Type de données d’état que la méthode doit capturer. Ce paramètre peut être défini sur une valeur définie dans le D3DSTATEBLOCKTYPE type énuméré.

[out, retval] ppSB

Type : IDirect3DStateBlock9**

Pointeur vers une interface de bloc d’état. Consultez IDirect3DStateBlock9.

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 l’une des suivantes : D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.

Remarques

Les états d’appareil liés au vertex font généralement référence aux états qui affectent la façon dont le système traite les sommets. Les états liés aux pixels font généralement référence aux états d’appareil qui affectent la façon dont le système traite les données de mémoire tampon de pixels ou de profondeur pendant la rastérisation. Certains états sont contenus dans les deux groupes.

Différences entre Direct3D 9 et Direct3D 10 :

Dans Direct3D 9, un bloc d’état contient des données d’état, pour les états qu’il a été demandé de capturer, lors de la création de l’objet. Pour modifier la valeur du bloc d’état, appelez IDirect3DStateBlock9 ::Capture ou IDirect3DDevice9 ::BeginStateBlock/IDirect3DDevice9 ::EndStateBlock. Aucun état n’est enregistré lorsqu’un objet de bloc d’état est créé dans Direct3D 10.

Configuration requise

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

Voir aussi

IDirect3DDevice9

IDirect3DDevice9 ::BeginStateBlock

IDirect3DDevice9 ::EndStateBlock