Руководство по командной строке

Некоторым разработчикам нравится широко использовать командную строку. Godot разработан для того, чтобы быть дружелюбным к ним, поэтому здесь приведены шаги для работы полностью из командной строки. Поскольку механизм практически не опирается на внешние библиотеки, время инициализации довольно быстрое, что делает его подходящим для данного рабочего процесса.

Command line reference

Основные настройки

Команда Описание
-h, --help, /? Отобразить список опций командной строки.
--version Показать версию строки.
-v, --verbose Использовать подробный режим stdout.
--quiet Тихий режим, заглушает сообщения stdout. Ошибки по-прежнему отображаются.

Параметры запуска

Команда Описание
-e, --editor Start the editor instead of running the scene (tools must be enabled).
-p, --project-manager Запустит менеджер проектов, даже если проект определен автоматически (tools должнен быть включен).
-q, --quit Выйти после первой итерации.
-l <locale>, --language <locale> Использовать конкретный язык ( где <locale> - двухбуквенный код языка ). Смотрите Locales для более подробной информации.
--path <directory> Путь к проекту (<directory> должен содержать файл „project.godot“).
-u, --upwards Сканирование папок вверх при поиске файла «project.godot».
--main-pack <file> Путь к пакету (.pck) для загрузки.
--render-thread <mode> Режим потока рендера („unsafe“, „safe“, „separate“). Смотрите Thread Model для более подробной информации.
--remote-fs <address> Удаленная файловая система (адрес формата <host/IP>[:<port>]).
--audio-driver <driver> Аудио драйвер. Сначала используйте --help для отображения списка доступных драйверов.
--video-driver <driver> Видео драйвер. Сначала используйте --help для отображения списка доступных драйверов.

Опции дисплея

Команда Описание
-f, --fullscreen Запросить полноэкранный режим.
-m, --maximized Запросить полноэкранное окно.
-w, --windowed Запросить оконный режим.
-t, --always-on-top Запросить окно поверх других окон.
--resolution <W>x<H> Запросить разрешение окна.
--position <X>,<Y> Запросить положение окна.
--low-dpi Принудительный режим низкого разрешения (только для MacOS и Windows).
--no-window Отключить создание окон (только для Windows). Полезно вместе с --script.

Опции отладки

Примечание

Параметры отладки доступны только в редакторе и шаблонах экспорта отладки (для них требуются цели сборки debug или release_debug, см. Цель для более подробной информации).

Команда Описание
-d, --debug Отладка (локальный отладчик stdout).
-b, --breakpoints Список точек останова в виде пар источник::строка, разделенные запятыми, без пробелов (используйте %%20 заместо пробела).
--profiling Включить профилирование в отладчике скрипта.
--remote-debug <address> Удаленная отладка (адрес формата <host/IP>:<port>).
--debug-collisions Показать формы столкновения при запуске сцены.
--debug-navigation Показывать полигоны навигации при запуске сцены.
--frame-delay <ms> Имитировать высокую нагрузку процессора (задерживать каждый кадр на <ms> миллисекунд).
--time-scale <scale> Принудительная шкала времени (более высокие значения быстрее, 1,0 - нормальная скорость).
--disable-render-loop Отключить цикл рендеринга, чтобы рендеринг происходил только при явном вызове из скрипта.
--disable-crash-handler Отключить обработчик сбоя, если это поддерживается кодом платформы.
--fixed-fps <fps> Принудительное фиксированное количество кадров в секунду. Этот параметр отключает синхронизацию в реальном времени.
--print-fps Выводить количество кадров в секунду на стандартный вывод.

Автономные инструменты

Команда Описание
-s <script>, --script <script> Запуск скрипта.
--check-only Только разбор ошибок и выход (использовать с --script).
--export <target> Экспортирует проект, используя заданную цель экспорта. Экспортирует только основной пакет, если путь заканчивается на .pck или .zip (tools должен быть включен).
--export-debug <target> Как --export, но использует шаблон отладки (tools должна быть включена).
--doctool <path> Сохранить справку по API движка на заданный <path> (путь) в формате XML, объединяя, если найдены существующие файлы (tools должна быть включена).
--no-docbase Запретить дамп базовых типов (используется с --doctool, tools должна быть включена).
--build-solutions Построение скриптовых решений (например, для проектов на C# tools должна быть включена).
--gdnative-generate-json-api Создайте дамп JSON API-интерфейса Godot для привязок GDNative (tools должен быть включен).
--test <test> Запустить юнит-тест. Сначала используйте --help для отображения списка тестов. (tools должен быть включен).

Путь

Рекомендуется, чтобы ваш бинарный файл Godot находился в переменной окружения PATH, чтобы его можно было легко выполнить из любого места, набрав godot. Вы можете сделать это на Linux, поместив бинарный файл Godot в /usr/local/bin и убедившись, что он называется godot.

Настройка пути проекта

В зависимости от того, где расположен ваш бинарный файл Godot и какая у вас рабочая директория, для корректной работы одной из следующих команд может понадобиться указать путь к вашему проекту.

Это можно сделать, указав путь к файлу вашего проекта project.godot в качестве первого аргумента, как показано ниже:

godot path_to_your_project/project.godot [other] [commands] [and] [args]

Или с помощью аргумента --path:

godot --path path_to_your_project [other] [commands] [and] [args]

Например, полная команда для экспорта вашей игры (описано ниже) может выглядеть следующим образом:

godot --path path_to_your_project --export my_export_preset_name game.exe

Создание проекта

Создание проекта из командной строки можно выполнить, переместив командную оболочку (shell) в нужное место и создав файл project.godot.

mkdir newgame
cd newgame
touch project.godot

Теперь проект можно открыть с помощью Godot.

Запуск редактора

Запуск редактора осуществляется путем выполнения команды Godot с флагом -e. Это должно быть сделано изнутри каталога проекта или подкаталога, в противном случае команда игнорируется и появляется менеджер проекта.

godot -e

Если сцена была создана и сохранена, ее можно отредактировать позже, запустив тот же код с этой сценой в качестве аргумента.

godot -e scene.tscn

Удаление сцены

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

rm scene.tscn

Запуск игры

Чтобы запустить игру, просто запустите Godot в каталоге проекта или подкаталоге.

godot

Если необходимо протестировать определенную сцену, передайте ее в командную строку.

godot scene.tscn

Отладка

Отлов ошибок в командной строке может быть непростой задачей, потому что они просто пролетают мимо. Для этого в отладчике командной строки добавьте -d. Он работает либо для запуска игры, либо для простой сцены.

godot -d
godot -d scene.tscn

Экспорт

Exporting the project from the command line is also supported. This is especially useful for continuous integration setups. The version of Godot that is headless (server build, no video) is ideal for this.

godot --export "Linux/X11" /var/builds/project
godot --export Android /var/builds/project.apk

The platform names recognized by the --export switch are the same as displayed in the export wizard of the editor. To get a list of supported platforms from the command line, try exporting to a non-recognized platform and the full listing of platforms your configuration supports will be shown.

Для экспорта отладочной версии игры используйте переключатель --export-debug вместо --export. Их параметры и использование одинаковы.

Запуск скрипта

Есть возможность запуска простого .gd скрипта из командной строки. Эта функция особенно полезна в крупных проектах, для груповой конвертации ассетов или пользовательского импорта/экспорта.

Скрипт должен наследоваться от SceneTree или MainLoop.

Вот простой пример того, как это работает:

# sayhello.gd
extends SceneTree

func _init():
    print("Hello!")
    quit()

И как запустить его:

# Prints "Hello!" to standard output.
godot -s sayhello.gd

Если файл project.godot не существует в пути, то текущий путь считается текущим рабочим каталогом (если не указано ``-path`).