Чтобы начать работать в Godot, нужно скачать его с официального сайта — это бесплатно, регистрация не нужна. Установка простая, занимает пару минут.
После запуска создается новый проект: нужно выбрать папку, где будут храниться все файлы игры, и задать название. Лучше сразу создать отдельную папку для каждого проекта, чтобы файлы не путались.
Интерфейс движка состоит из нескольких окон:
- В центре находится сцена — рабочая область, где расставляются объекты. В 2D-режиме это плоскость с координатной сеткой, в 3D-режиме — объемное пространство с осями.
- Слева расположено дерево сцены — список всех объектов на текущей сцене в виде иерархии.
- Справа — инспектор, где отображаются свойства выбранного объекта: его размер, цвет, положение, прикрепленные скрипты и компоненты.
- Внизу обычно находится файловая система — папки с ресурсами проекта: картинками, звуками, шрифтами. Там же есть окно вывода, где показываются сообщения об ошибках и отладочная информация.
Игра в Godot строится из сцен. Сценой может быть уровень, персонаж, монетка, интерфейс — любой элемент игры. Удобно, что одну сцену можно использовать много раз. Например, создав сцену монетки, можно разместить на уровне сотню ее экземпляров. Если понадобится изменить монетку (например, сделать ее золотой, а не серебряной), достаточно отредактировать одну сцену, и все монетки на всех уровнях изменятся автоматически.
Любой объект в сцене называется узлом. Узлы бывают разных типов, например:
- Sprite для отображения картинок,
- CollisionShape2D для обработки столкновений,
- Camera2D для камеры,
- Timer для отсчета времени,
- AudioStreamPlayer для проигрывания звуков.
Из узлов собирается дерево сцены, которое показывает, как объекты связаны друг с другом.
Первый проект в Godot дети обычно делают двухмерным. Создают новую сцену 2D, добавляют узел Sprite и выбирают картинку персонажа. Потом добавляют фон — еще один спрайт с большим изображением. Чтобы персонаж мог двигаться, нужно добавить ему скрипт. Для этого выделяют узел персонажа, нажимают кнопку «Прикрепить скрипт» и пишут код на GDScript.
GDScript очень похож на Python, поэтому код легко читается. Например, чтобы персонаж двигался вправо при нажатии стрелки, пишется такая конструкция:
if Input.is_action_pressed("ui_right"):
position.x += 5
Это значит: если нажата стрелка вправо, увеличить координату X персонажа на 5 пикселей. Все интуитивно понятно даже тем, кто никогда не программировал. Аналогично добавляется движение влево, вверх, вниз.
Следующий шаг — добавить гравитацию, чтобы персонаж падал вниз, и прыжок по нажатию кнопки. Для этого понадобится немного больше кода, но логика остается простой: проверяем, нажата ли кнопка прыжка, и если персонаж стоит на земле, задаем ему вертикальную скорость.
Потом добавляют обработку столкновений с платформами, чтобы персонаж не проваливался сквозь пол. И через пару занятий в Godot у ребенка уже есть маленькая рабочая игра, в которую можно играть с друзьями.