CryENGINE

Русское сообщество

Flowgraph модульной системы

Flowgraph модульной системы

Что такое модуль
Преобразование Flowgraph для модуля
Создание пустого модуля
Удаление или переименование модуля
Сохранение модуля
Вызов модуля из Flowgraph
C + + интерфейс
Что такое модуль

Модуль экспортировала Flowgraph, которые могут быть загружены и вызваны из другой Flowgraph в любой момент во время игрового сеанса. Любой Flowgraph могут быть преобразованы в модуль просто путем экспорта Flowgraph его Xml формат, используя параметр "Сохранить" в Flowgraph редактор.

Преимущества использования модулей:


То же Flowgraph может быть использован в нескольких уровнях, но существуют только в одном месте.
Модули могут получать уникальные значения входных от своих абонентов, что позволяет им быть очень прочным.
Модули могут возвращать уникальные значения выхода их абонентов, что позволяет использовать их в самых разных ситуациях.
Преобразование Flowgraph для модуля

Модуль просто особый аромат Flowgraph. Это означает, что ЛЮБОЙ Flowgraph может стать Модуль с несколько простых изменений, внесенных в нее. Таким выбрать свой любимый Flowgraph, что вы хотите превратить в модуль, или создать простой в работе. Первое, что вам нужно сделать, это место Модуль: Начало Node. Это действует как стартовую точку для вашего модуля, когда она вызывается. Он также переносится на любой вход отправленные с Caller узла (подробнее об этом позже).


Выходы:

Начало - Вызывается, когда модуль загружен. Лечить это, как вы бы Разное: начального узла.
Entity - EntityId присвоен модуль, как ее график Entity. Это ваш собственный ведения; любой узел, который либо настроен на использование График лица или не назначен Entity будет автоматически использовать это.
Param1 - Дополнительные данные параметра передается от абонента Node.
Param2 - Дополнительные данные параметра передается от абонента Node.
Param3 - Дополнительные данные параметра передается от абонента Node.
Param4 - Дополнительные данные параметра передается от абонента Node.
Param5 - Дополнительные данные параметра передается от абонента Node.
Param6 - Дополнительные данные параметра передается от абонента Node.

После того как вы разместили Отправная точка, вы можете разместить конечной точки с помощью модуля: Возвращение Node. Обратите внимание, что этот набор не требуется. Когда модуль возвращается, он выгружается и прекращает выполнение. Если вы хотите, чтобы ваши Модуль всегда оставаться выполнение при уровне в настоящее время играют, то не возвращаются из него! Вернувшись из Модуль позволяет вам пройти дополнительные данные на абонента.


Входы:

Конец - Позвоните, чтобы возвратиться из модуля с Успеха статус.
Отмена - Позвоните, чтобы возвратиться из модуля с негоден.

Param1 - Дополнительные данные параметра передается обратно Caller Node.
Param2 - Дополнительные данные параметра передается обратно Caller Node.
Param3 - Дополнительные данные параметра передается обратно Caller Node.
Param4 - Дополнительные данные параметра передается обратно Caller Node.
Param5 - Дополнительные данные параметра передается обратно Caller Node.
Param6 - Дополнительные данные параметра передается обратно Caller Node.
Создание пустого модуля


Если вы хотите создать новый модуль с нуля, вы можете просто выбрать File-> New FG модуль ... из меню редактора Flowgraph. Это создаст новые Flowgraph с модулем: Пуск и модуля: Возвращение flownodes уже добавлены к нему.


Удаление или переименование модуля

Если вы хотите удалить или переименовать конкретных модулей вы можете правой кнопкой мыши на имя модуля FG Модули список.



    Примечание
При удалении модуля он будет также удаление сохраненных XML-файл.
Сохранение модуля

Чтобы сохранить Flowgraph так что он может быть использован в качестве модуля, все что вам нужно сделать, это довести до вашего Flowgraph в Flowgraph редактор и выберите Сохранить из меню Файл. Есть несколько мест, где вы должны сохранить Flowgraph, в зависимости от того, как вы хотите использовать:

Игры / Libs / FlowgraphModules /
Это ваша Глобальный папку модулей. Сохраните модуль здесь, если вы хотите использовать его на нескольких уровнях.
Игры / уровень / MyLevel / FlowgraphModules /
Это ваша Уровень Модули папку. Каждый уровень может иметь свою собственную папку модулей. Сохраните модуль здесь, если вы хотите использовать его только в одном определенном уровне.
При загрузке модуля, система будет сначала проверить текущий уровень в FlowgraphModules папку. Если модуль не найден там, это будет выглядеть в Глобальной FlowgraphModules папку. Это дает вам возможность перезаписать Глобальный модуль с Level-конкретный модуль, если хотите.

Вызов модуля из Flowgraph


Так что теперь у нас есть этот модуль готов к использованию в нашей уровне. Для вызова модуля, все, что нужно сделать, это использовать модуль: Call Node.



Входы:

Вызовов - Call загрузить модуль и начать его исполнение.
Модуль - Название модуля для вызова. Это должно совпадать с именем XML-файл, сохраненный на предыдущем шаге. Вы не должны включать в себя ". XML" части.
Entity - EntityId, которые должны быть График Entity этого модуля.
Param1 - Дополнительные данные параметра для передачи в Пуск-модуля узлов.
Param2 - Дополнительные данные параметра для передачи в Пуск-модуля узлов.
Param3 - Дополнительные данные параметра для передачи в Пуск-модуля узлов.
Param4 - Дополнительные данные параметра для передачи в Пуск-модуля узлов.
Param5 - Дополнительные данные параметра для передачи в Пуск-модуля узлов.
Param6 - Дополнительные данные параметра для передачи в Пуск-модуля узлов.
Выходы:

Вызывается - Вызывается, когда модуль полностью загружен и начал выполняться. Возвращает True в случае успеха, False, если не удалось загрузить.
Совершено - Вызывается, когда модуль возвращается с Успеха статус.
Отменен - Вызывается, когда модуль возвращается с негоден.
Param1 - Дополнительные данные параметра передается обратно из модуля, когда он вернулся.
Param2 - Дополнительные данные параметра передается обратно из модуля, когда он вернулся.
Param3 - Дополнительные данные параметра передается обратно из модуля, когда он вернулся.
Param4 - Дополнительные данные параметра передается обратно из модуля, когда он вернулся.
Param5 - Дополнительные данные параметра передается обратно из модуля, когда он вернулся.
Param6 - Дополнительные данные параметра передается обратно из модуля, когда он вернулся.

C + + интерфейс


Чтобы получить доступ к системе Flowgraph модуля из-за пределов вы можете использовать IFlowgraphModuleManager интерфейс.

Код / CryEngine / CryCommon / IFlowgraphModuleManager.h
# Включить "IFlowgraphModuleManager.h"
//...
IFlowgraphModuleManager * pModuleManager = gEnv-> pFlowSystem-> GetIModuleManager ();

Поток узла графа Состав
Импорт и экспорт потока Графики