Онлайн-компилятор GDScript
Пишите, запускайте и делитесь фрагментами кода - без установки.
Запустите GDScript онлайн в браузере
Бесплатная онлайн-песочница и раннер для GDScript. Напишите скрипт Godot в браузере, нажмите «Запустить», и движок Godot 4 без графического интерфейса выполнит его за секунды. Не нужно скачивать редактор Godot, создавать проект или что-либо устанавливать.
Ваш файл main.gd запускается как сцена из одного узла: скрипт добавляется в дерево сцены, поэтому _init() и _ready() выполняются так же, как в игре, а программа завершается после первого кадра. Весь вывод идёт в консоль, поэтому здесь удобно быстро практиковать сам язык: статическую типизацию, массивы и словари, match, классы, внутренние классы и сигналы. Редактор построен на том же движке, что и VS Code, и делает отступы табами.
Почему эта песочница GDScript полезна
- Настоящий Godot: скрипт выполняется на движке Godot 4 без графического интерфейса, а не в эмуляторе, поэтому встроенные типы,
print(), форматирование строк и стандартные функции GDScript ведут себя ровно так же, как в редакторе Godot. - Поддерживается ввод через stdin. Каждый вызов
OS.read_string_from_stdin()читает одну строку из поля ввода песочницы, уже без символа перевода строки, поэтому скрипт может спросить имя и число, как это делает стартовый пример. - Понятные ошибки: ошибка во время выполнения выводится вместе с сообщением, а файл, в котором смешаны табы и пробелы, отклоняется ещё до запуска, как и в Godot. Редактор делает отступы табами, так что они остаются единообразными.
- Бесплатно и с открытым кодом от начала до конца: Godot распространяется по лицензии MIT, а песочнице не нужны ни аккаунт, ни загрузки, ни проект Godot.
Что можно построить в песочнице GDScript
- Форматирование строк и вычисления: собирайте вывод через плейсхолдеры
%('%s has %d HP' % [name, hp]) илиString.format(), округляйте сsnappedf()и пробуйте типизированные переменные с выводом типа через:=. - Массивы и словари: типизированные массивы (
Array[int]),map(),filter()иreduce()с лямбдами, а также словари с характеристиками предметов, которые вы обходите черезfor key in inventory. - Игровая логика без игры: оператор
matchдля состояний игрока, класс сsignal health_changed(value), который вы подключаете черезconnect()и вызываете черезemit(), и внутренние классы, объявленные какclass Enemy:прямо в вашем скрипте.
Часто задаваемые вопросы про онлайн-компилятор GDScript
Онлайн-компилятор GDScript бесплатный?
Нужно ли устанавливать редактор Godot?
Как работают _ready() и _init() в песочнице?
main.gd прикрепляется к одному узлу, который добавляется в дерево сцены: сначала выполняется _init(), затем _ready(), а после первого кадра программа завершается. Скрипт без extends выполняет свой _init(). Игрового цикла, который продолжал бы работать, здесь нет, поэтому код, который нужно выполнить, помещайте в _ready() или _init().Поддерживает ли песочница GDScript ввод через stdin?
OS.read_string_from_stdin() возвращает следующую строку без перевода строки, и её можно преобразовать через int() или float(), как это делает стартовый скрипт.Можно ли использовать сцены, спрайты или физику?
Sprite2D ничего не показывают, а цикла _process() нет. Всё, что вы передаёте в print(), появляется в выводе, и этого хватает для самого языка: типов, коллекций, match, классов и сигналов.Почему мой скрипт падает с ошибкой отступов?
Как изучать GDScript после песочницы?
Полезные инструменты для GDScript
Бесплатные браузерные инструменты, которые отлично работают с Playground GDScript - всё это часть Coddy.