Поделиться через


Интерфейс ID3D11FunctionLinkingGraph (d3d11shader.h)

Интерфейс графа связывания функций используется для создания шейдеров, состоящих из последовательности предварительно скомпилированных вызовов функций, которые передают значения друг другу.

Примечание Этот интерфейс является частью технологии связывания шейдеров HLSL, которую можно использовать на всех платформах Direct3D 11 для создания предварительно скомпилированных функций HLSL, их упаковки в библиотеки и связывания с полными шейдерами во время выполнения.

 

Наследование

Интерфейс ID3D11FunctionLinkingGraph наследуется от интерфейса IUnknown . ID3D11FunctionLinkingGraph также имеет следующие типы элементов:

Методы

Интерфейс ID3D11FunctionLinkingGraph содержит следующие методы.

 
ID3D11FunctionLinkingGraph::CallFunction

Создает узел, связывающий функцию вызова, для использования в графе связывания функций.
ID3D11FunctionLinkingGraph::CreateModuleInstance

Инициализирует модуль шейдера из объекта function-linking-graph.
ID3D11FunctionLinkingGraph::GenerateHlsl

Создает код шейдера HLSL, представляющий граф связывания функций.
ID3D11FunctionLinkingGraph::GetLastError

Возвращает ошибку из последнего вызова функции графа связывания функций.
ID3D11FunctionLinkingGraph::P assValue

Передает значение из узла, связывающего источник, в узел назначения, связывающий.
ID3D11FunctionLinkingGraph::P assValueWithSwizzle

Передает значение со значением swizzle из исходного узла, связывающего узел с узлом назначения.
ID3D11FunctionLinkingGraph::SetInputSignature

Задает входную сигнатуру графа связывания функций.
ID3D11FunctionLinkingGraph::SetOutputSignature

Задает выходную сигнатуру графа связывания функций.

Комментарии

Чтобы получить интерфейс function-linking-graph, вызовите D3DCreateFunctionLinkingGraph.

Методы интерфейса function-linking-graph (FLG) можно использовать для создания шейдеров, состоящих из последовательности предварительно скомпилированных вызовов функций, которые передают значения друг другу. Вам не нужно писать HLSL, а затем вызывать компилятор HLSL. Вместо этого структура шейдера задается программным способом с помощью API C++. Узлы FLG представляют входные и выходные сигнатуры и вызовы предкомпилированных функций библиотеки. Порядок регистрации узлов вызова функции определяет последовательность вызовов. Сначала необходимо указать узел входной сигнатуры и последний узел сигнатуры вывода. Ребра FLG определяют, как значения передаются от одного узла к другому. Типы данных переданных значений должны быть одинаковыми; неявное преобразование типов отсутствует. Правила формирования и поворота соответствуют поведению HLSL. Значения могут передаваться только в этой последовательности.

ПримечаниеID3D11FunctionLinkingGraph требует D3dcompiler_47.dll или более поздней версии библиотеки DLL.
 

Требования

   
Целевая платформа Windows
Header d3d11shader.h

См. также раздел

IUnknown

Интерфейсы шейдеров