Condividi tramite


Metodo IDirect3DDevice9::CreateStateBlock (d3d9helper.h)

Crea un nuovo blocco di stato che contiene i valori per tutti gli stati del dispositivo, gli stati correlati ai vertici o gli stati correlati ai pixel.

Sintassi

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

Parametri

[in] Type

Tipo: D3DSTATEBLOCKTYPE

Tipo di dati di stato che il metodo deve acquisire. Questo parametro può essere impostato su un valore definito nel tipo enumerato D3DSTATEBLOCKTYPE .

[out, retval] ppSB

Tipo: IDirect3DStateBlock9**

Puntatore a un'interfaccia del blocco di stato. Vedere IDirect3DStateBlock9.

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, il valore restituito viene D3D_OK. Se il metodo ha esito negativo, il valore restituito può essere uno dei seguenti: D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY.

Commenti

Gli stati dei dispositivi correlati ai vertici in genere fanno riferimento a tali stati che influiscono sul modo in cui il sistema elabora i vertici. Gli stati correlati ai pixel in genere fanno riferimento agli stati del dispositivo che influiscono sul modo in cui il sistema elabora i dati pixel o depth-buffer durante la rasterizzazione. Alcuni stati sono contenuti in entrambi i gruppi.

Differenze tra Direct3D 9 e Direct3D 10:

In Direct3D 9, un blocco di stato contiene dati sullo stato, per gli stati richiesti per l'acquisizione, quando l'oggetto viene creato. Per modificare il valore del blocco di stato, chiamare IDirect3DStateBlock9::Capture o IDirect3DDevice9::BeginStateBlock/IDirect3DDevice9::EndStateBlock. Non viene salvato alcuno stato quando viene creato un oggetto blocco di stato in Direct3D 10.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione d3d9helper.h (include D3D9.h)
Libreria D3D9.lib

Vedi anche

IDirect3DDevice9

IDirect3DDevice9::BeginStateBlock

IDirect3DDevice9::EndStateBlock