ID3D11FunctionLinkingGraph interface (d3d11shader.h)
A function-linking-graph interface is used for constructing shaders that consist of a sequence of precompiled function calls that pass values to each other.
Inheritance
The ID3D11FunctionLinkingGraph interface inherits from the IUnknown interface. ID3D11FunctionLinkingGraph also has these types of members:
Methods
The ID3D11FunctionLinkingGraph interface has these methods.
ID3D11FunctionLinkingGraph::CallFunction Creates a call-function linking node to use in the function-linking-graph. |
ID3D11FunctionLinkingGraph::CreateModuleInstance Initializes a shader module from the function-linking-graph object. |
ID3D11FunctionLinkingGraph::GenerateHlsl Generates Microsoft High Level Shader Language (HLSL) shader code that represents the function-linking-graph. |
ID3D11FunctionLinkingGraph::GetLastError Gets the error from the last function call of the function-linking-graph. |
ID3D11FunctionLinkingGraph::PassValue Passes a value from a source linking node to a destination linking node. |
ID3D11FunctionLinkingGraph::PassValueWithSwizzle Passes a value with swizzle from a source linking node to a destination linking node. |
ID3D11FunctionLinkingGraph::SetInputSignature Sets the input signature of the function-linking-graph. |
ID3D11FunctionLinkingGraph::SetOutputSignature Sets the output signature of the function-linking-graph. |
Remarks
To get a function-linking-graph interface, call D3DCreateFunctionLinkingGraph.
You can use the function-linking-graph (FLG) interface methods to construct shaders that consist of a sequence of precompiled function calls that pass values to each other. You don't need to write HLSL and then call the HLSL compiler. Instead, the shader structure is specified programmatically via a C++ API. FLG nodes represent input and output signatures and invocations of precompiled library functions. The order of registering the function-call nodes defines the sequence of invocations. You must specify the input signature node first and the output signature node last. FLG edges define how values are passed from one node to another. The data types of passed values must be the same; there is no implicit type conversion. Shape and swizzling rules follow the HLSL behavior. Values can only be passed forward in this sequence.
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | d3d11shader.h |