ID3D11FunctionLinkingGraph 介面 (d3d11shader.h)
函式連結圖形介面可用來建構著色器,這些著色器是由一系列預先編譯的函式呼叫所組成,這些呼叫會彼此傳遞值。
注意 此介面是 HLSL 著色器連結技術的一部分,您可以在所有 Direct3D 11 平臺上用來建立先行編譯的 HLSL 函式、將它們封裝成程式庫,並在執行時間將它們連結至完整的著色器。
繼承
ID3D11FunctionLinkingGraph介面繼承自IUnknown介面。 ID3D11FunctionLinkingGraph 也有下列類型的成員:
方法
ID3D11FunctionLinkingGraph介面具有這些方法。
ID3D11FunctionLinkingGraph::CallFunction 建立呼叫函式連結節點,以在 function-linking-graph 中使用。 |
ID3D11FunctionLinkingGraph::CreateModuleInstance 從 function-linking-graph 物件初始化著色器模組。 |
ID3D11FunctionLinkingGraph::GenerateHlsl 產生代表 function-linking-graph 的 Microsoft 高階著色器語言 (HLSL) 著色器程式碼。 |
ID3D11FunctionLinkingGraph::GetLastError 從 function-linking-graph 的最後一個函式呼叫中取得錯誤。 |
ID3D11FunctionLinkingGraph::P assValue 將值從來源連結節點傳遞至目的地連結節點。 |
ID3D11FunctionLinkingGraph::P assValueWithSwizzle 將值從來源連結節點傳遞至目的地連結節點。 |
ID3D11FunctionLinkingGraph::SetInputSignature 設定 function-linking-graph 的輸入簽章。 |
ID3D11FunctionLinkingGraph::SetOutputSignature 設定 function-linking-graph 的輸出簽章。 |
備註
若要取得 function-linking-graph 介面,請呼叫 D3DCreateFunctionLinkingGraph。
您可以使用 function-linking-graph (FLG) 介面方法來建構著色器,這些著色器是由一系列預先編譯函式呼叫所組成,這些呼叫會彼此傳遞值。 您不需要撰寫 HLSL,然後呼叫 HLSL 編譯器。 相反地,著色器結構是透過 C++ API 以程式設計方式指定。 FLG 節點代表預先編譯程式庫函式的輸入和輸出簽章和調用。 註冊函式呼叫節點的順序會定義調用順序。 您必須先指定輸入簽章節點,最後再指定輸出簽章節點。 FLG 邊緣會定義如何將值從一個節點傳遞到另一個節點。 傳遞值的資料類型必須相同;沒有隱含類型轉換。 圖形和雜亂規則遵循 HLSL 行為。 值只能在此序列中向前傳遞。
注意ID3D11FunctionLinkingGraph 需要 D3dcompiler_47.dll 或更新版本的 DLL。
需求
目標平台 | Windows |
標頭 | d3d11shader.h |