Документация
Docs/ru/reference/native-extension/index.md
Сгенерированный интерфейс нативных расширений
Сгенерированный справочник. Не редактируйте его напрямую. Обновите
BuildTools/NativeExtensionInterface.json, затем выполнитеpython BuildTools/docs_native_extension.py --write.
| Обзор | Роли | Хуки | Биндинги | Канонический JSON | Руководство |
Этот интерфейс описывает принадлежащие движку контракты компоновки и хуков для проектных нативных исходников C++. Он не документирует реализацию расширения конкретной игры.
Статус контракта
| Поле | Значение |
|---|---|
| Стабильность | experimental |
| Политика поддержки | Использование с совместимостью исходного кода документировано для закреплённой ревизии движка; бинарная совместимость независимо собранных компонентов не обещается. |
| Исходный манифест | BuildTools/NativeExtensionInterface.json |
| Дайджест контракта | 6a8b5d9d6b95a80f67104ddfabe3a7b42051b1b8944eb79ef6954c93d83a635d |
| Справочник | Записей | Назначение |
|---|---|---|
| Роли | 6 | Маршрутизация исходников CMake, библиотеки, заголовки и потребители. |
| Хуки | 8 | Необязательные объявления, места вызова, значения по умолчанию и состояние совместимости. |
| Биндинги | 6 | Правила регистрации, пространства имён, указателей и зависимостей. |
Граница
Включено:
- регистрация проектных исходников C++ по ролям через AddEngineSources
- участие зарегистрированных проектных исходников в обработке метаданных и кодогенерации
- необязательные объявления EngineHook, их сигнатуры, владеющие роли, места вызова и сгенерированное поведение по умолчанию
- правила нативного биндинга и пространства имён, необходимые сгенерированным экспортам в скрипты
Исключено:
- проектные реализации расширений, зависимости, настройки, персистентность и релизная политика
- ABI сторонних SDK и проектная упаковка нативных библиотек
- ABI между хостом и средой выполнения клиента и совместимость независимо собранных ревизий движка
- внутреннее устройство нативного скриптового backend, управляемого FO_NATIVE_SCRIPTING