reckfellENGINE

Экспорт игры для Windows

C# Debug/Release, шаблоны x64, отдельный и встроенный PCK, состав пакета и проверка запуска.

На этой странице

Что должно получиться

Экспорт создаёт приложение для Windows, а не копию редактора. В этом руководстве используется Reckfell 1.0.0, C# и архитектура x86_64. Экспортёр также предлагает x86_32 и arm64, но для них нужны соответствующие шаблоны и отдельная проверка на целевой системе. Наличие пункта в списке не означает, что нужный шаблон установлен.

Подготовить проект

  1. Укажите главный документ в настройках проекта и проверьте его запуск. Сохраните изменённые документы и ресурсы.
  2. Соберите C#. В проекте должен существовать ожидаемый .sln, связанный с .csproj: текущий C#-экспортёр обнаруживает .NET-проект по файлу решения. Одного .csproj недостаточно. См. настройку C#.
  3. Откройте Project → Export, добавьте Windows Desktop и назовите профиль Windows Desktop. Имя профиля используется в командах ниже.
  4. Выберите binary_format/architecture = x86_64. Через Editor → Manage Export Templates проверьте шаблоны 1.0.0 для Debug и Release этой архитектуры.
  5. Для первой проверки оставьте экспорт всех ресурсов. Если читаете JSON через FileAccess, добавьте *.json в фильтр включения файлов. Это отдельная настройка от списка ресурсов.

В настройках C# выберите dotnet/embed_build_outputs = true, если хотите упаковать результаты C#-сборки в PCK. По умолчанию этот параметр выключен; тогда рядом с приложением могут появиться отдельные каталоги данных C#. Сохраняйте их.

Первый экспорт

Выберите Export Project, сохраните файл Game.exe в отдельную папку вне исходного проекта и сначала выполните Debug-экспорт. Для минимальной проверки можно выключить application/modify_resources и codesign/enable, чтобы пока не менять значок, метаданные и подпись.

РезультатЧто с ним делать
Game.exeЗапускать приложение
Game.pck, если PCK не встроенДержать рядом с Game.exe, с тем же базовым именем
Game.console.exe, если включён console wrapperЗапускать для просмотра диагностического вывода; это помощник, не замена основному EXE
Дополнительные DLL и каталоги данныхПередавать вместе с остальными результатами экспорта

Не переименовывайте отдельно EXE или PCK. Для передачи игры упакуйте всю выходную папку в ZIP. ZIP-архив с файлами приложения и ZIP, используемый как основной ресурсный pack, — разные вещи.

Debug и Release из PowerShell

Поменяйте три пути на свои. Профиль Windows Desktop уже должен существовать. Команды запускают установленный редактор; сборка исходников движка не требуется.

PowerShell
$engineExe = 'C:/Tools/Reckfell/Runtime/Reckfell Engine.console.exe'
$projectDir = 'C:/Projects/MyGame'
$buildDir = 'C:/Builds/MyGame'
New-Item -ItemType Directory -Force -Path "$buildDir/Debug", "$buildDir/Release" | Out-Null
& $engineExe --headless --path $projectDir --editor --export-debug 'Windows Desktop' "$buildDir/Debug/Game.exe"
if ($LASTEXITCODE -ne 0) { throw 'Debug export failed' }
& $engineExe --headless --path $projectDir --editor --export-release 'Windows Desktop' "$buildDir/Release/Game.exe"
if ($LASTEXITCODE -ne 0) { throw 'Release export failed' }

Относительный выходной путь отсчитывается от папки проекта, а не от текущей папки терминала. Проверьте журнал, даже если файл EXE появился: неполный результат не считается готовой сборкой.

Встроенный и отдельный PCK

binary_format/embed_pck добавляет данные PCK в EXE. Это независимо от dotnet/embed_build_outputs: первый параметр размещает pack, второй — результаты C#-сборки. Встраивание PCK не отменяет возможные внешние зависимости расширений или рендера.

Для текущего Windows-экспортёра размер EXE вместе со встроенными данными должен быть меньше 4 GiB: значение от 4 GiB отклоняется при исправлении PE-заголовка. Этот предел проверен по исходникам; большой пакет на границе не запускался. Для крупных данных используйте отдельный PCK.

Значок, метаданные и подпись

При включённом application/modify_resources экспортёр меняет ресурсы EXE. application/icon имеет приоритет над проектными настройками Windows-значка и общего значка. Для собственной ICO-версии см. значок Windows.

Подпись включается через codesign/enable. На Windows путь к SignTool задаётся в export/windows/signtool; данные сертификата задаются в профиле. Переменные RECKFELL_WINDOWS_CODESIGN_IDENTITY_TYPE, RECKFELL_WINDOWS_CODESIGN_IDENTITY и RECKFELL_WINDOWS_CODESIGN_PASSWORD переопределяют соответствующие конфиденциальные параметры. Не помещайте пароль в опубликованную команду или журнал.

Изменение значка и подпись проверяйте на окончательном файле отдельно: описанные ниже запуски выполнялись без этих операций.

Проверить перед передачей

Запустите и Debug, и Release из выходных папок. Перенесите всю папку в другое место и повторите запуск. Проверьте стартовый документ, загрузку ресурсов по строковым путям, JSON/CSV, C#-поведение, управление, звук и сохранение в user://.

Затем проверьте пакет на целевом компьютере: другая видеокарта, установленный .NET и отсутствие редактора могут изменить условия запуска. Локальная проверка не заменяет этот шаг.

СимптомПроверить сначала
Шаблон не найденВерсию, архитектуру, Debug/Release и установленный файл шаблона
EXE появился, C# не работает.sln, ошибки publish, настройки .NET и дополнительные файлы экспорта
Не найден основной packИмя и расположение Game.pck либо настройку Embed PCK
В редакторе данные есть, в игре нетРежим выбора ресурсов, фильтры включения и исключения; пути, вычисляемые в коде
Есть только PCKИспользован Export PCK/ZIP вместо Export Project

Проверенный пример: Windows x64 C# Debug с отдельным PCK и Release со встроенным PCK, с dotnet/embed_build_outputs = true. Обе сборки запускались из посторонней рабочей папки и читали ресурс, UTF-8 JSON и настройки проекта. Это проверка упаковки и выполнения C#, а не графики, подписи или установки на чистый компьютер.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.