Настройка IDE для исходников движка
Рабочая папка, параметры генерации и подтверждённая диагностика SCons.
Среда разработки исходников
Этот раздел относится к C++-исходникам движка. Для C#-кода игры откройте проект игры и начните с основ C#. Решения в Source/modules/mono/ предназначены для отдельных managed-компонентов; они не заменяют проект всего C++-движка.
Выбрать рабочую папку
Открывайте каталог Source, содержащий SConstruct, core, scene, editor и platform. Команды SCons в этом разделе относятся к нему, а не к папке установленного Runtime или проекта игры.
Сначала определите platform, target и arch по руководству сборки. IDE должна использовать ту же конфигурацию, что и сборочная система. Само открытие папки не создаёт сгенерированные заголовки, не устанавливает компилятор и не собирает бинарный файл.
| Задача | Следующий шаг |
|---|---|
| Проект Visual Studio для C++ | Генерация решения и её ограничения. |
| Индексация C++ в VS Code | База команд компиляции. |
| Понять параметры SCons | Сборочная система. |
| Работать с managed-частью движка | Сборка с .NET. |
База команд компиляции
compile_commands.json описывает отдельные команды компиляции: файлы, рабочие каталоги, include-пути и определения. Это вход для анализатора кода, а не готовая сборка или список игровых скриптов.
В текущем SConstruct объявлены compiledb=yes и compiledb_gen_only=yes. Второй параметр завершает конфигурацию после записи базы. Получение базы всё равно требует корректного прохождения конфигурации SCons; отсутствие компиляции не означает отсутствие требований к инструментам и исходникам. После изменения платформы, модулей или параметров обновляйте базу.
Известная проблема текущего дерева
В Source/methods.py функции glob_recursive и glob_recursive_2 импортируют SCons.Entity. Установленный SCons 4.11.1 не предоставляет этот модуль: изолированный вызов обеих функций заканчивается ImportError до обхода каталогов. Поэтому генерацию решения и полной базы нельзя объявлять проверенно рабочей для этого состояния исходников.
Это проблема сборочных helper-функций, а не настройка IntelliSense. Повторная установка расширения IDE не исправит такой traceback. Сохраните версию SCons и полный стек, проверьте состояние исходников; не переименовывайте сторонние Python-модули по терминологии движка. Работающий установленный Runtime для чтения и редактирования исходников заменять не требуется.
Проверены объявления параметров и реальный отказ двух helper-функций. Полная конфигурация SCons, генерация решения/базы, компиляция C++ и работа интерфейса IDE в этом прогоне не выполнялись. Исходники и установленный движок не менялись.