效果系統介面 (Direct3D 10)
效果系統會定義數個介面來管理效果狀態。 有兩種類型的介面:運行時間用來呈現效果和反映介面的介面,以便取得和設定效果變數。
效果運行時間介面
使用運行時間介面來轉譯效果。
運行時間介面 | 描述 |
---|---|
ID3D10Effect 介面 | 用於轉譯的一或多項技術集合。 |
ID3D10Include 介面 | 用於在讀取 Include 檔案時新增自訂行為的介面。 |
ID3D10EffectPass 介面 | 狀態指派的集合。 |
ID3D10EffectPool 介面 | 建立要與效果之間共用之變數的記憶體位置。 |
ID3D10EffectTechnique 介面 | 一或多個傳遞的集合。 |
效果反映介面
反映是在效果系統中實作,以支援讀取(和寫入)效果狀態。 有多種方式可以存取效果變數。
設定效果狀態群組
使用這些介面來取得和設定狀態群組。
反映介面 | 描述 |
---|---|
ID3D10EffectBlendVariable 介面 | 取得和設定混合狀態。 |
ID3D10EffectDepthStencilVariable 介面 | 取得和設定深度樣板狀態。 |
ID3D10EffectRasterizerVariable 介面 | 取得和設定轉譯器狀態。 |
ID3D10EffectSamplerVariable 介面 | 取得和設定取樣器狀態。 |
設定效果資源
使用這些介面來取得和設定資源。
反映介面 | 描述 |
---|---|
ID3D10EffectConstantBuffer 介面 | 存取紋理緩衝區或常數緩衝區中的數據。 |
ID3D10EffectDepthStencilViewVariable 介面 | 存取深度樣板資源中的數據。 |
ID3D10EffectRenderTargetViewVariable 介面 | 存取轉譯目標中的數據。 |
ID3D10EffectShaderResourceVariable 介面 | 存取著色器資源中的數據。 |
設定其他效果變數
使用這些介面,依變數類型取得和設定狀態。
反映介面 | 描述 |
---|---|
ID3D10EffectMatrixVariable 介面 | 取得並設定矩陣。 |
ID3D10EffectScalarVariable 介面 | 取得並設定純量。 |
ID3D10EffectShaderVariable 介面 | 取得並設定著色器變數。 |
ID3D10EffectStringVariable 介面 | 取得並設定字串。 |
ID3D10EffectType 介面 | 取得變數類型。 |
ID3D10EffectVectorVariable 介面 | 取得和設定向量。 |
所有反映介面都衍生自 ID3D10EffectVariable 介面。
相關主題