Creates a new state block that contains the values for all device states, vertex-related states, or pixel-related states.
HRESULT CreateStateBlock( [in] D3DSTATEBLOCKTYPE Type, [out, retval] IDirect3DStateBlock9 **ppSB );
- Type [in]
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]
Pointer to a state block interface. See IDirect3DStateBlock9.
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.
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.
Build date: 11/16/2013