Об этом проекте
2dog — это проект, который переворачивает обычное соотношение между Godot и .NET: вместо того чтобы Godot загружал .NET, .NET-приложение принимает Godot как хост. Он упаковывает слегка изменённый libgodot как библиотеку, которую .NET-приложения могут встраивать, так что средой выполнения процесса управляет .NET.
Поскольку приложением управляет .NET, разработчики получают публикацию в браузере через browser-wasm, обычные инструменты dotnet и автоматизацию, например модульные тесты. Поставляются предварительно собранные нативные библиотеки, поэтому пользователям не нужно самостоятельно компилировать Godot. Примечательный результат — возможность экспортировать C#-проекты Godot в веб.
Варианты начала работы:
- Для существующего проекта Godot выполните `dnx 2dog add` в каталоге проекта, чтобы добавить вложенные .NET-хосты, затем `dotnet run --project MyGame.2dog`. Повторный запуск команды добавляет ещё один хост.
- Для нового проекта выполните `dnx 2dog new MyGame`, затем `dotnet run --project MyGame.2dog`. Также предоставляется шаблон `dotnet new` через `dotnet new install 2dog && dotnet new 2dog -n MyGame`.
- Привычный рабочий процесс в редакторе Godot по-прежнему работает для визуального редактирования сцен.
Веб-экспорт: опубликуйте сгенерированное .NET-приложение в browser-wasm с помощью рабочей нагрузки wasm-tools, затем раздайте каталог AppBundle через dotnet-serve. Сайт документации охватывает цикл разработки, варианты развёртывания и текущие ограничения.
Структура проекта: 2dog добавляет подкаталоги, содержащие «хосты», которые запускают проект Godot с помощью libgodot, а не шаблонов экспорта или исполняемого файла редактора. Типичная структура включает корень проекта Godot с project.godot и C#-сборкой игры, а также настольный .NET-хост, браузерный хост WebAssembly и headless-хост тестов xUnit. Каждый вложенный хост содержит .gdignore, чтобы Godot его игнорировал, сохраняя исходный проект игры неизменным, при этом у каждого хоста есть собственная точка входа и зависимости.
Требования и статус:
- .NET SDK 10.0 или новее с рабочей нагрузкой wasm-tools
- Официальный .NET-редактор Godot 4.7.x только когда требуется визуальное редактирование сцен
- Поддерживаемые платформы сборки: win-x64, linux-x64, osx-arm64
- Поддерживаемые RID для опубликованных сборок: win-x64, linux-x64, osx-arm64, browser-wasm
- Пакеты доступны на NuGet и в релизах GitHub
Разработка самого 2dog: клонируйте с подмодулями и собирайте нативные пакеты и пакеты .NET с помощью предоставленной задачи poe. Включены демонстрационный пример и набор тестов. Проект документирует использование LLM в разных частях кодовой базы, включая контроль на этапе ревью и релизы, подписанные человеком, через Trusted Publishing.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.