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

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

Примечание

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

На MacOS процесс отличается для Godot из-за того что Godot содержится в .app (который является папкой, а не файлом). Что бы запустить бинарный файл движка Godot с терминала на MacOS, надо перейти в папку где находится Godot с помощью команды cd, а затем запустить Godot, введя в терминал следующее: Godot.app/Contents/MacOS/Godot указав после этого аргументы запуска. Если вы переименовали папку с Godot, то убедитесь в том что вы изменили команду для запуска Godot соответсвующе.

Ссылка на командную строку

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

Command

Описание

-h, --help, /?

Отобразить список опций командной строки.

--version

Показать версию строки.

-v, --verbose

Использовать подробный режим stdout.

--quiet

Тихий режим, заглушает сообщения stdout. Ошибки по-прежнему отображаются.

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

Command

Описание

-e, --editor

Запустите редактор вместо запуска сцены (tools должен быть включен).

-p, --project-manager

Запустит менеджер проектов, даже если проект определен автоматически (tools должнен быть включен).

-q, --quit

Выйти после первой итерации.

-l <locale>, --language <locale>

Использовать конкретный язык ( где <locale> - двухбуквенный код языка ). Смотрите Локали для более подробной информации.

--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 для отображения списка доступных драйверов.

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

Command

Описание

-f, --fullscreen

Запросить полноэкранный режим.

-m, --maximized

Запросить полноэкранное окно.

-w, --windowed

Запросить оконный режим.

-t, --always-on-top

Запросить окно поверх других окон.

--resolution <W>x<H>

Запросить разрешение окна.

--position <X>,<Y>

Запросить положение окна.

--low-dpi

Принудительный режим низкого разрешения (только для MacOS и Windows).

--no-window

Запуск без видимых окон. Полезно совместно с --script.

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

Примечание

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

Command

Описание

-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

Выводить количество кадров в секунду на стандартный вывод.

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

Command

Описание

-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 должен быть включен).

--export-pack <preset> <path>

Как --export, но экспортирует только игровой проект для выбранного шаблона. Параметр <path> означает, в каком он будет формате: PCK или ZIP. (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

Экспорт

Также поддерживается экспорт проекта из командной строки. Это особенно полезно при непрерывной интеграции. Для этого идеально подойдет версия Godot в режиме Headless (сборка сервера, без видео).

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

Имя предустановки должно совпадать с именем предустановки экспорта, определенной в файле проекта export_presets.cfg. Если имя предустановки содержит пробелы или специальные символы (например, «Рабочий стол Windows»), оно должно быть заключено в кавычки.

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

Чтобы экспортировать только файл PCK, укажите ключ --export-pack, сразу после наименования шаблона и пути сохранения, вместо ключа --export. Параметр "Путь сохранения" означает формат пакета: PCK или ZIP.

Предупреждение

При указании относительного пути в качестве пути для «--export», «--export-debug» или «--export-pack» путь будет выстраиваться относительно каталога, содержащего файл «project.godot», не относительно текущего рабочего каталога.

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

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

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

Вот простой пример sayhello.gd и как это работает:

#!/usr/bin/env -S godot -s
extends SceneTree

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

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

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

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

Первая строка sayhello.gd отсылается к так называемому шебангу. По правилам этой инструкции, если бинарный исполняемый файл Godot указан в переменной окружения PATH как godot, вы сможете запускать скрипт в современных дистрибутивах Linux, а также в macOS:

# Mark script as executable.
chmod +x sayhello.gd
# Prints "Hello!" to standard output.
./sayhello.gd

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

#!/usr/bin/godot -s