共用方式為


效果系統介面 (Direct3D 11)

效果系統會定義數個介面來管理效果狀態。 介面有兩種類型:執行時間用來呈現效果和反映介面,以取得和設定效果變數。

效果執行時間介面

使用執行時間介面來呈現效果。

執行時間介面 描述
ID3DX11Effect 用於轉譯的一或多個群組和技術的集合。
ID3DX11EffectPass 狀態指派的集合。
ID3DX11EffectTechnique 一或多個傳遞的集合。
ID3DX11EffectGroup 一或多個技術的集合。

 

效果反映介面

反映會在效果系統中實作,以支援讀取 (和寫入) 效果狀態。 有多種方式可以存取效果變數。

設定效果狀態群組

使用這些介面來取得和設定狀態群組。

反映介面 描述
ID3DX11EffectBlendVariable 取得和設定混合狀態。
ID3DX11EffectDepthStencilVariable 取得和設定深度樣板狀態。
ID3DX11EffectRasterizerVariable 取得並設定轉譯器狀態。
ID3DX11EffectSamplerVariable 取得和設定取樣器狀態。

 

設定效果資源

使用這些介面來取得和設定資源。

反映介面 描述
ID3DX11EffectConstantBuffer 存取紋理緩衝區或常數緩衝區中的資料。
ID3DX11EffectDepthStencilViewVariable 存取深度樣板資源中的資料。
ID3DX11EffectRenderTargetViewVariable 存取轉譯目標中的資料。
ID3DX11EffectShaderResourceVariable 存取著色器資源中的資料。
ID3DX11EffectUnorderedAccessViewVariable 存取未排序存取檢視中的資料。

 

設定其他效果變數

使用這些介面,依變數類型取得和設定狀態。

反映介面 描述
ID3DX11EffectClassInstanceVariable 取得類別實例。
ID3DX11EffectInterfaceVariable 取得和設定介面。
ID3DX11EffectMatrixVariable 取得並設定矩陣。
ID3DX11EffectScalarVariable 取得並設定純量。
ID3DX11EffectShaderVariable 取得著色器變數。
ID3DX11EffectStringVariable 取得並設定字串。
ID3DX11EffectType 取得變數類型。
ID3DX11EffectVectorVariable 取得並設定向量。

 

所有反映介面都衍生自 ID3DX11EffectVariable

Direct3D 11 (效果)

Direct3D 11 的程式設計指南