FOnline Engine
Current master GitHub
Документация Docs/ru/reference/native-extension/roles.md

Роли нативных расширений

Сгенерированный справочник. Не редактируйте его напрямую. Обновите BuildTools/NativeExtensionInterface.json, затем выполните python BuildTools/docs_native_extension.py --write.

Обзор Роли Хуки Биндинги Канонический JSON Руководство

Это роли, которые используются текущими целями Engine. Каждый найденный исходник также добавляется в FO_SOURCE_META_FILES до кодогенерации.

Стабильный ID Роль Список исходников Библиотека Основной заголовок Потребители Скриптовые цели Назначение
native-extension.role.common COMMON FO_COMMON_SOURCE CommonLib Common.h client, server, mapper, baker, animation-viewer, particle-viewer, ascompiler, tests common Код, общий для каждой включённой роли движка; используйте только для действительно общих зависимостей и хуков.
native-extension.role.server SERVER FO_SERVER_SOURCE ServerLib Server.h server, tests server Авторитетный серверный код и экспорты в серверные скрипты.
native-extension.role.client CLIENT FO_CLIENT_SOURCE ClientLib Client.h client, server, mapper, baker, animation-viewer, particle-viewer, ascompiler, tests client, mapper Код среды выполнения клиента; пути контроллера сервера, Mapper, оба специализированных просмотрщика, BakerLib и ASCompiler линкуются с ClientLib, но целями экспорта в скрипты являются только клиент и Mapper.
native-extension.role.mapper MAPPER FO_MAPPER_SOURCE MapperLib Mapper.h mapper, tests mapper Нативные инструменты только для Mapper и экспорты в его скрипты.
native-extension.role.baker BAKER FO_BAKER_SOURCE BakerLib Baker.h mapper, baker, animation-viewer, particle-viewer, ascompiler, tests - Расширения запекателя ресурсов, общие для Baker, Mapper, обоих специализированных просмотрщиков и ASCompiler; BAKER не является целью экспорта в скрипты.
native-extension.role.tests TESTS FO_TESTS_SOURCE UnitTests/Coverage executable catch_amalgamated.hpp tests, coverage - Проектные модули трансляции Catch2, компилируемые непосредственно во включённые исполняемые файлы unit-тестов и покрытия; у TESTS нет потребителей среды выполнения и целей экспорта в скрипты.

Форма регистрации

AddEngineSources(
    COMMON SourceExt/CommonExtension.cpp
    SERVER SourceExt/ServerExtension.cpp
    CLIENT SourceExt/ClientExtension.cpp)
RegisterEngineSources()

Пути и шаблоны разрешаются относительно корня вклада подключающего проекта. Текущий helper не отклоняет неизвестный token роли: он создаёт список FO__SOURCE, но ни одна цель Engine не использует этот список, если роль не описана выше.

Введите запрос.