D3DHAL_DP2TEXTURESTAGESTATE結構 (d3dhal.h)
當D3DHAL_DP2COMMAND結構的 bCommand 成員設定為 D3DDP2OP_TEXTURESTAGESTATE,並使用 來設定適當的紋理階段狀態時,D3dDrawPrimitives2 回呼會從命令緩衝區剖析一或多個D3DHAL_DP2TEXTURESTAGESTATE結構。
語法
typedef struct _D3DHAL_DP2TEXTURESTAGESTATE {
WORD wStage;
WORD TSState;
DWORD dwValue;
} D3DHAL_DP2TEXTURESTAGESTATE;
成員
wStage
識別要更新紋理狀態的紋理階段。 此成員可以是範圍 0 到 7 中的整數,且編號最高的紋理最接近畫面格緩衝區。
TSState
指定D3DTEXTURESTAGESTATETYPE列舉值,指定要更新的紋理狀態。 DirectX 9.0 和更新版本應用程式可以使用D3DSAMPLERSTATETYPE列舉中的值來控制取樣器紋理相關轉譯狀態的特性。 在 DirectX 8.0 和更早版本中,這些取樣器狀態包含在 D3DTEXTURESTAGESTATETYPE 列舉中。 運行時間會將使用者模式取樣器狀態 (D3DSAMP_ Xxx) 對應至內核模式D3DTSS_Xxx 值,因此不需要驅動程式來處理使用者模式取樣器狀態。 如需D3DTEXTURESTAGESTATETYPE和D3DSAMPLERSTATETYPE的詳細資訊,請參閱 DirectX SDK 檔。
dwValue
指定驅動程序應該將 TSState 所識別的紋理狀態更新為的值。
備註
D3dDrawPrimitives2 應該從命令緩衝區處理 wStateCount D3DHAL_DP2TEXTURESTAGESTATE結構。 wStateCount 的值是在 D3DHAL_DP2COMMAND 結構中指定。
針對每個D3DHAL_DP2TEXTURESTAGESTATE結構, D3dDrawPrimitives2 應該更新與 dwStage 上紋理相關聯的驅動程序內部紋理狀態,以根據 TSState 反映新的值。
不支援多重文字的驅動程序應該只實作紋理階段 0 的支援。
下圖顯示範例命令緩衝區的一部分,其中包含D3DDP2OP_TEXTURESTAGESTATE命令和三個D3DHAL_DP2TEXTURESTAGESTATE結構。 驅動程式應該據以更新階段零和三個其私人紋理階段狀態。
規格需求
需求 | 值 |
---|---|
標頭 | d3dhal.h (包含 D3dhal.h) |
另請參閱
D3DDP2OP_TEXTURESTAGESTATE