This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Некоторым разработчикам нравится широко использовать командную строку. Godot разработан для того, чтобы быть дружелюбным к ним, поэтому здесь приведены шаги для работы полностью из командной строки. Поскольку механизм практически не опирается на внешние библиотеки, время инициализации довольно быстрое, что делает его подходящим для данного рабочего процесса.
Примечание
В Windows и Linux вы можете запустить исполняемый файл Godot в терминале, указав его относительный или абсолютный путь.
На MacOS процесс отличается для Godot из-за того что Godot содержится в .app (который является папкой, а не файлом). Что бы запустить бинарный файл движка Godot с терминала на MacOS, надо перейти в папку где находится Godot с помощью команды cd, а затем запустить Godot, введя в терминал следующее: Godot.app/Contents/MacOS/Godot указав после этого аргументы запуска. Если вы переименовали папку с Godot, то убедитесь в том что вы изменили команду для запуска Godot соответсвующе.
Доступно в эдитор сборках, при дебажном экспорте и в релизном экспорте шаблонов.
Доступно только в эдитор сборках и при дебажном экспорте шаблонов.
Доступно только в сборках редактора и шаблонах экспорта, скомпилированных с disable_path_overrides=false.
Доступно только в эдитор сборках.
Учтите, что неизвестные аргументы командной строки проигнорируются. Движок не сообщит вам о том, что вы используете несуществующие в выбранном варианте сборки аргументы.
Основные настройки
Command
Описание
-h, --help
Отобразить список опций командной строки.
--version
Показать строку версии.
-v, --verbose
Использовать подробный режим stdout.
-q, --quiet
Тихий режим, заглушает сообщения stdout. Ошибки по-прежнему отображаются.
--no-header
Не выводить версию движка и заголовок метода рендеринга при запуске.
Параметры запуска
Command
Описание
--, ++
Разделитель для пользовательских аргументов. Приведенные аргументы не используются движком, но могут быть прочитаны с помощью OS.get_cmdline_user_args().
-e, --editor
Запустить редактор вместо запуска сцены.
-p, --project-manager
Запустить Проектный Менеджер, даже если проект был найден автоматически.
--recovery-mode
Start the editor in recovery mode, which disables features that can typically cause startup crashes, such as tool scripts, editor plugins, and
GDExtension addons.
--debug-server<uri>
Запустить дебаг сервер для редактора (<protocol>://<host/IP>[:<port>], например tcp://127.0.0.1:6007)
--dap-port<port>
Использовать указанный порт для протокола отладочного адаптера GDScript. Рекомендуемый диапазон портов. [1024,49151].
--lsp-port<port>
Использовать указанный порт для протокола сервера языка GDScript. Рекомендуемый диапазон портов. [1024,49151].
--quit
Выйти после первой итерации.
--quit-after
Выйти после заданного числа итераций. Передайте 0 для отключения.
-l, --language<locale>
Использовать заданную локализацию. <locale> задается в формате language_Script_COUNTRY_VARIANT где 'language' двух-трех буквенное обозначение кода языка в нижнем регистре, все остальное опционально. Коды локалей (языков) для более подробной информации.
--path<directory>
Путь к проекту (каталог должен содержать файл "project.godot").
--scene<path>
Путь или UID сцены в проекте, которую следует запустить.
--main-pack<file>
Путь к файлу пакета (.pck) для загрузки.
--render-thread<mode>
Режим потока рендеринга ("unsafe", "safe", "separate"). Подробнее см. Модель потока.
--remote-fs<address>
Удаленная файловая система (адрес <host/IP>[:<port>]).
--remote-fs-password<пароль>
Пароль для удаленного доступа к файловой системе.
--audio-driver<driver>
Аудио драйвер. Сначала используйте --help, чтобы отобразить список доступных драйверов.
--display-driver<драйвер>
Драйвер дисплея (и драйвер рендеринга). Сначала используйте --help, чтобы отобразить список доступных драйверов.
--audio-output-latency<ms>
Переопределить задержку аудиовыхода в миллисекундах (по умолчанию 15 мс). Более низкие значения делают воспроизведение звука более быстрым, но увеличивают загрузку CPU и могут привести к прерыванию звука, если CPU не справляется.
--rendering-method<renderer>
Имя рендерера. Допустимые значения: forward_plus, mobile, gl_compatibility. Требуется поддержка драйвера.
--rendering-driver<driver>
Драйвер рендеринга (зависит от драйвера дисплея). Сначала используйте --help, чтобы отобразить список доступных драйверов.
--gpu-index<индекс_устройства>
Использовать конкретный GPU (доступно только для рендереров Forward+/Mobile; запустите с --verbose, чтобы получить список доступных устройств).
--text-driver<драйвер>
Текстовый драйвер (Шрифты, BiDi, shaping).
--tablet-driver<драйвер>
Драйвер ввода графического планшета.
--headless
Включает headless (безоконный) режим (--display-driverheadless--audio-driverDummy). Полезен для серверов и со --script.
--log-file
Записывать журнал вывода/ошибок по указанному пути вместо местоположения по умолчанию, определённого проектом. Путь к файлу должен быть абсолютным или относительным к каталогу проекта.
--write-movie<файл>
Запустите движок таким образом, чтобы создать фильм (обычно с расширением .avi или .png). --fixed-fps применяется по умолчанию при включении, но может использоваться для изменения FPS фильма. --disable-vsync может ускорить запись фильма, но делает взаимодействие более сложным. --quit-after можно использовать для указания количества кадров для записи.
Опции дисплея
Command
Описание
-f, --fullscreen
Запросить полноэкранный режим.
-m, --maximized
Запросить развернутое окно.
-w, --windowed
Запросить оконный режим.
-t, --always-on-top
Запросить окно, которое всегда будет поверх остальных окон.
--resolution<W>x<H>
Запросить разрешение окна.
--position<X>,<Y>
Запросить позицию окна.
--screen<N>
Запросить экран окна.
--single-window
Использовать одиночное окно (без отдельных подокон).
Принудительно устанавливать барьеры между навигационными цепочками. Полезно для определения команды, вызывающей перезагрузку графического процессора. В настоящее время реализовано только для Vulkan.
--remote-debug<uri>
Удаленная отладка (<protocol>://<host/IP>[:<port>], например, tcp://127.0.0.1:6007).
--single-threaded-scene
Запустить дерево сцены в однопоточном режиме. Дочерние потоки отключены и будут запущенны в основном потоке.
--debug-collisions
Показывать формы столкновений при запуске сцены.
--debug-paths
Показывать линии пути при запуске сцены.
--debug-navigation
Показывать навигационные полигоны при запуске сцены.
--debug-avoidance
Показывать визуальные эффекты отладки избежания навигации при запуске сцены.
--debug-stringnames
Печать всех выделений StringName в stdout при завершении работы движка.
--debug-canvas-item-redraw
Отображать прямоугольник каждый раз, когда элемент холста запрашивает перерисовку (полезно для устранения неполадок в режиме низкой загрузки процессора).
--max-fps<fps>
Устанавливает максимальное количество отрисовываемых кадров в секунду (можно использовать для ограничения энергопотребления). Значение 0 означает неограниченную частоту кадров.
--frame-delay<ms>
Имитировать высокую нагрузку CPU (задерживать каждый кадр на <ms> миллисекунд). Не используйте как ограничитель FPS; вместо этого используйте --max-fps.
--time-scale<scale>
Масштаб времени силы (чем выше значение, тем быстрее, 1,0 — нормальная скорость).
--disable-vsync
Отключает вертикальную синхронизацию, даже если она включена в настройках проекта. Не работает, если вертикальная синхронизация принудительно включена на уровне драйвера.
--disable-render-loop
Отключить цикл рендеринга, чтобы рендеринг выполнялся только при явном вызове из скрипта.
--disable-crash-handler
Отключить обработчик сбоев, если это поддерживается кодом платформы.
--fixed-fps<fps>
Принудительно установить фиксированное количество кадров в секунду. Эта настройка отключает синхронизацию в реальном времени.
--delta-smoothing<включить>
Включить или отключить сглаживание дельты кадров ("enable", "disable").
--print-fps
Вывести количество кадров в секунду на стандартный вывод.
--editor-pseudolocalization
Включить псевдолокализацию для редактора и менеджера проекта.
Автономные инструменты
Command
Описание
-s, --script<script>
Запустить скрипт. <script> должен быть путём к ресурсу относительно проекта (myscript.gd будет интерпретироваться как res://my_script.gd) или абсолютным путём к файловой системе (например, в Windows: C:/tmp/my_script.gd).
--main-loop<main_loop_name>
Запустить MainLoop, заданный именем его глобального класса.
--check-only
Только анализировать на наличие ошибок и выйти (использовать с --script).
--import
Запускает редактор, ждет импорта любых ресурсов, а затем завершает работу. Подразумевает использование параметров --editor и --quit.
--export-release<preset><path>
Экспортировать проект в режиме релиза, используя заданный пресет и путь вывода. Имя пресета должно совпадать с определённым в "export_presets.cfg". <path> должен быть абсолютным или относительным к каталогу проекта и включать имя файла для бинарного файла (например, "builds/game.exe"). Целевой каталог должен существовать.
--export-debug<preset><path>
Подобно --export-release, но использует шаблон отладки. Подразумевает использование --import.
--export-pack<preset><path>
Как --export-release, но экспортирует только игровой пакет для заданной предустановки. Расширение <path> определяет, будет ли он в формате PCK или ZIP. Подразумевает --import.
--export-patch<preset><path>
Экспортировать пакет только с изменёнными файлами. См. описание --export-pack для других соображений.
--patches<paths>
Список патчей для использования с --export-patch. Список разделён запятыми.
--install-android-build-template
Установить шаблон сборки Android. Используется вместе с --export-release или --export-debug.
Показывает, какие элементы будут переименованы при преобразовании проекта из Godot 3.x в Godot 4.x.
--doctool[<путь>]
Вывести ссылку API движка на указанный <path> в формате XML, объединив, если будут найдены существующие файлы.
--no-docbase
Запретить выгрузку базовых типов (используется с --doctool).
--gdextension-docs
Вместо выгрузки API движка сгенерировать справочную документацию API из всех загруженных GDExtensions в текущем проекте (используется с --doctool).
--gdscript-docs<путь>
Вместо выгрузки API движка сгенерировать справочную документацию API из встроенной документации в файлах GDScript, найденных в <path> (используется с --doctool).
--build-solutions
Собрать решения для скриптов (например, для проектов на C#). Подразумевает использование --editor и требует наличия действительного проекта для редактирования.
--dump-gdextension-interface
Сгенерировать заголовочный файл GDExtension "gdextension_interface.h" в текущей папке. Этот файл является базовым для реализации GDExtension.
--dump-gdextension-interface-json
Сгенерировать JSON-выгрузку интерфейса GDExtension с именем "gdextension_interface.json" в текущей папке.
--dump-extension-api
Сгенерировать JSON-выгрузку API Godot для привязок GDExtension с именем "extension_api.json" в текущей папке.
--dump-extension-api-with-docs
Сгенерировать JSON-выгрузку API Godot, как в предыдущей опции, но включая документацию.
--validate-extension-api<путь>
Проверить файл API расширения, выгруженный (с использованием предыдущей опции) из предыдущей версии движка, чтобы обеспечить совместимость API. Если будут обнаружены несоответствия или ошибки, код возврата будет отличен от нуля.
--benchmark
Benchmark the runtime and print it to console.
--benchmark-file<путь>
Benchmark the runtime and save it to the given file path, in JSON format. <path> should be absolute.
--test[--help]
Запустить модульные тесты (требуется компиляция движка с tests=yes). Используйте --test--help для получения дополнительной информации.
Рекомендуется, чтобы ваш бинарный файл редактора Godot находился в переменной окружения PATH, чтобы его можно было легко выполнить из любого места, набрав godot. Вы можете сделать это на Linux, поместив бинарный файл Godot в /usr/local/bin и убедившись, что он называется godot.
Чтобы достичь этого на Windows или macOS, вы можете скачать Godot используя Scoop (на Windows) или Homebrew (на macOS). Это автоматически сделает копию Godot доступной в PATH:
# Add "Extras" bucket
scoopbucketaddextras
# Standard editor:
scoopinstallgodot
# Editor with C# support (will be available as `godot-mono` in `PATH`):
scoopinstallgodot-mono
# Standard editor:
brewinstallgodot
# Editor with C# support (will be available as `godot-mono` in `PATH`):
brewinstallgodot-mono
В зависимости от того, где расположен ваш бинарный файл Godot и какая у вас рабочая директория, для корректной работы одной из следующих команд может понадобиться указать путь к вашему проекту.
При запуске редактора это можно сделать, указав путь к файлу project.godot вашего проекта в качестве первого аргумента, например:
Когда вы запускаете из подпапки вашего проекта, используйте аргумент --upwards для Godot, чтобы автоматически найти файл project.godot путем рекурсивного поиска в родительских директориях.
Например, запуск сцены (как объясняется ниже), расположенной в подпапке, может выглядеть следующим образом, если ваш рабочий каталог находится в том же пути:
Запуск редактора осуществляется путем запуска Godot с флагом -e. Это должно быть сделано из каталога проекта или путем установки пути проекта, как описано выше, в противном случае команда игнорируется и появляется Менеджер Проектов.
godot-e
При передаче полного пути к файлу project.godot флаг -e можно опустить.
Если сцена была создана и сохранена, ее можно отредактировать позже, запустив тот же код с этой сценой в качестве аргумента.
Godot дружит с вашей файловой системой и не будет создавать дополнительных файлов метаданных. Используйте rm для стирания файла сцены. Убедитесь, что на эту сцену ничего не ссылается. В противном случае при открытии проекта возникнет ошибка.
Отлов ошибок в командной строке может быть сложной задачей, поскольку они быстро прокручиваются. Для этого предоставляется отладчик командной строки, добавляющий -d. Он работает как для запуска игры, так и для отдельной сцены.
Также поддерживается экспорт проекта из командной строки. Это особенно полезно для непрерывной интеграции.
Примечание
Использование аргумента командной строки --headlessобязательно на платформах, не имеющих доступа к GPU (таких как системы непрерывной интеграции). На платформах с доступом к GPU аргумент --headless препятствует появлению окна во время экспорта проекта.
# `godot` must be a Godot editor binary, not an export template.# Also, export templates must be installed for the editor# (or a valid custom export template must be defined in the export preset).
godot--headless--export-release"Linux/X11"/var/builds/project
godot--headless--export-releaseAndroid/var/builds/project.apk
Имя предустановки должно совпадать с именем предустановки экспорта, определенной в файле проекта export_presets.cfg. Если имя предустановки содержит пробелы или специальные символы (например, «Рабочий стол Windows»), оно должно быть заключено в кавычки.
Чтобы экспортировать отладочную версию игры, используйте ключ --export-debug вместо --export-release. Их параметры и использование одинаковы.
Чтобы экспортировать только файл PCK, используйте опцию --export-pack, за которой следует предустановленное имя и выходной путь с расширением файла, вместо --export-release или --export-debug. Расширение выходного пути определяет формат пакета: PCK или ZIP.
Предупреждение
При указании относительного пути в качестве пути для --export-release, --export-debug или --export-pack путь будет относительным к каталогу, содержащему файл project.godot, а не относительно текущего рабочего каталога.
Можно запустить скрипт .gd из командной строки. Эта функция особенно полезна в больших проектах, например, для пакетного преобразования активов или пользовательского импорта/экспорта.
Скрипт должен наследоваться от SceneTree или MainLoop.
Вот пример sayhello.gd, показывающий, как это работает:
# Prints "Hello!" to standard output.
godot-ssayhello.gd
Если файл project.godot не существует в пути, то текущий путь считается текущим рабочим каталогом (если не указано --path).
Путь к скрипту будет интерпретироваться как путь к ресурсу относительно проекта, здесь res://sayhello.gd. Вместо этого вы также можете использовать абсолютный путь к файловой системе, что полезно, если скрипт находится вне каталога проекта.
Первая строка sayhello.gd отсылается к так называемому шебангу. По правилам этой инструкции, если бинарный исполняемый файл Godot указан в переменной окружения PATH как godot, вы сможете запускать скрипт в современных дистрибутивах Linux, а также в macOS:
# Mark script as executable.
chmod+xsayhello.gd
# Prints "Hello!" to standard output.
./sayhello.gd
Если вышеперечисленное не работает в вашей текущей версии Linux или macOS, вы всегда можете заставить шебанг запускать Godot прямо с того места, где он находится, следующим образом: