IDirect3DDevice9::CreateStateBlock 方法 (d3d9.h)

建立新的狀態欄塊,其中包含所有裝置狀態、頂點相關狀態或圖元相關狀態的值。

語法

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

參數

[in] Type

類型: D3DSTATEBLOCKTYPE

方法應該擷取的狀態資料類型。 此參數可以設定為 D3DSTATEBLOCKTYPE 列舉型別中定義的值。

[out, retval] ppSB

類型: IDirect3DStateBlock9**

狀態欄塊介面的指標。 請參閱 IDirect3DStateBlock9

傳回值

類型: HRESULT

如果方法成功,傳回值會D3D_OK。 如果方法失敗,傳回值可以是下列其中一項:D3DERR_INVALIDCALL、D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY。

備註

頂點相關裝置狀態通常是指影響系統處理頂點方式的狀態。 圖元相關狀態通常是指影響系統在點陣化期間處理圖元或深度緩衝區資料的裝置狀態。 這兩個群組都包含一些狀態。

Direct3D 9 與 Direct3D 10 之間的差異:

在 Direct3D 9 中,狀態欄塊包含狀態資料,用於建立物件時要求擷取的狀態。 若要變更狀態欄塊的值,請呼叫IDirect3DStateBlock9::CaptureIDirect3DDevice9::BeginStateBlock/IDirect3DDevice9::EndStateBlock。 在 Direct3D 10 中建立狀態欄塊物件時,不會儲存狀態。

需求

   
目標平台 Windows
標頭 d3d9.h (包含 D3D9.h)
程式庫 D3D9.lib

另請參閱

IDirect3DDevice9

IDirect3DDevice9::BeginStateBlock

IDirect3DDevice9::EndStateBlock