Expand Minimize

IDirect3DDevice9::CreateStateBlock method

Creates a new state block that contains the values for all device states, vertex-related states, or pixel-related states.

Syntax


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

Parameters

Type [in]

Type: D3DSTATEBLOCKTYPE

Type of state data that the method should capture. This parameter can be set to a value defined in the D3DSTATEBLOCKTYPE enumerated type.

ppSB [out, retval]

Type: IDirect3DStateBlock9**

Pointer to a state block interface. See IDirect3DStateBlock9.

Return value

Type: HRESULT

If the method succeeds, the return value is D3D_OK. If the method fails, the return value can be one of the following: D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.

Remarks

Vertex-related device states typically refer to those states that affect how the system processes vertices. Pixel-related states generally refer to device states that affect how the system processes pixel or depth-buffer data during rasterization. Some states are contained in both groups.

Differences between Direct3D 9 and Direct3D 10:

In Direct3D 9, a state block contains state data, for the states it was requested to capture, when the object is created. To change the value of the state block, call IDirect3DStateBlock9::Capture or IDirect3DDevice9::BeginStateBlock/IDirect3DDevice9::EndStateBlock. There is no state saved when a state block object is created in Direct3D 10.

 

Requirements

Header

D3D9.h

Library

D3D9.lib

See also

IDirect3DDevice9
IDirect3DDevice9::BeginStateBlock
IDirect3DDevice9::EndStateBlock

 

 

Community Additions

ADD
Show:
© 2014 Microsoft