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

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

Путь

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

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

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

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

[email protected]:~$ godot path_to_your_project/project.godot [other] [commands] [and] [args]

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

[email protected]:~$ godot --path path_to_your_project [other] [commands] [and] [args]

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

[email protected]:~$ godot --path path_to_your_project --export my_export_preset_name game.exe

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

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

[email protected]:~$ mkdir newgame
[email protected]:~$ cd newgame
[email protected]:~/newgame$ touch project.godot

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

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

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

[email protected]:~/newgame$ godot -e

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

[email protected]:~/newgame$ godot -e scene.tscn

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

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

[email protected]:~/newgame$ rm scene.tscn

Запуск игры

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

[email protected]:~/newgame$ godot

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

[email protected]:~/newgame$ godot scene.tscn

Отладка

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

[email protected]:~/newgame$ godot -d
[email protected]:~/newgame$ 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.

[email protected]:~/newgame$ godot --export "Linux X11" /var/builds/project
[email protected]:~/newgame$ 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()

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

[email protected]:~/newgame$ godot -s sayhello.gd
Hello!

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