# 1. Установка Godot, проект «Третья планета», профиль Android

Table of Contents

1. Установка Godot, проект «Третья планета», профиль Android

Цель

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

Описание выполненной работы

Этот текст рассчитан на человека, который только знакомится с Godot и со сборкой под Android. Если какая‑то терминология покажется незнакомой, имеет смысл параллельно держать открытой официальную документацию Godot 4.x по экспорту для Android (Exporting for Android).

Зачем папка src/ и где лежит project.godot

В этом репозитории принято считать корнем именно игровую часть каталог src/. Файл project.godot — главная точка входа для движка: редактор ищет его и считает родительскую папку корнем проекта. Поэтому в проводнике или в диалоге «Импорт» нужно выбирать не корень монорепозитория целиком, а именно src/. Так проще держать рядом документацию, посты для сайта и материалы .ai/, не смешивая их со сценами и скриптами.

Установка редактора Godot под Windows

Godot распространяется как один исполняемый файл без классического инсталлятора. Достаточно скачать сборку ветки 4.4 или совместимую с массивом config/features в project.godot (там указано "4.4"). Если вы используете другую минорную версию (например 4.5 или 4.6), редактор обычно всё равно откроет проект и при необходимости предложит обновить номер версии в настройках — это нормально, главное не откатываться на Godot 3.x.

После первого запуска имеет смысл установить экспортные шаблоны через меню редактора: без них пункт экспорта для Android будет недоступен или завершится ошибкой «templates missing».

Что уже создано в проекте и как это проверить

  1. Откройте Godot и выберите «Импорт» или «Редактировать», указав путь к src/project.godot.
  2. Убедитесь, что в «Диспетчере файлов» редактора видны ресурсы res://scenes/main.tscn и res://icon.svg.
  3. Запустите сцену главного узла через кнопку Play (F5): пока узел пустой, вы увидите пустое окно или фон по умолчанию — этого достаточно для проверки, что главная сцена подключена.

Главная сцена задаётся ключом application/run/main_scene в project.godot. Для минимального проекта создан простейший узел Main типа Node без дочерних элементов — на следующих шагах сюда добавят интерфейс и игровое поле.

Настройки под описание игры из docs/description.md

Из описания уже можно было применить к проекту следующие технические решения:

Требование из описанияГде отражено в проекте
Портретная ориентацияdisplay/window/handheld/orientation=1 (портрет)
Игра для Androidпресет экспорта и размер окна как у телефона
Управление как на телефоне при отладке на ПКinput_devices/pointing/emulate_touch_from_mouse=true
Космическая тематика и «планеты»пока только текст описания и простая иконка; арт приедет позже

Размер поля 8×16, правила очков и ИИ противника не требуют отдельных ключей в project.godot на этом шаге — они будут реализованы кодом и сценами следующих пунктов плана. Важно уже сейчас зафиксировать текстовое описание в поле application/config/description, чтобы через месяц не гадать, что за игра открыта в редакторе.

Разбор ключевых секций project.godot

Ниже — не дословная цитата файла, а объяснение, зачем нужны типичные группы настроек.

Секция [application] задаёт человекочитаемое имя, версию и главную сцену. Поле config/name попадает в заголовок окна редактора и в название приложения при экспорте, если вы не переопределите его в пресете Android. Поле config/description видно в диалогах экспорта и полезно команде и будущим вам.

Секция [display] управляет тем, как игрок видит картинку. Здесь выставлены ширина и высота области просмотра 720 и 1280 пикселей — типичное соотношение для вертикального мобильного казуального проекта. Режим растягивания canvas_items даёт чёткие 2D‑спрайты при масштабировании под разные экраны; aspect expand допускает небольшие поля, если соотношение сторон устройства отличается от эталона — для продакшена иногда переходят на keep_height или настроивают безопасную область под вырезы, это можно сделать позже.

Секция [input_devices] с включённой эмуляцией касания нужна почти всегда, когда вы разрабатываете под телефон, но запускаете игру на ПК: перетаскивания мышью будут восприниматься как тачи без дополнительного кода.

Секция [rendering] задаёт метод рендеринга Forward Plus и фильтра текстур для Canvas — базовый разумный дефолт для 2D с качественным масштабированием UI.

Пример того, как выглядит описание приложения и главная сцена в текстовом виде (фрагмент для ориентира):

[application]
config/name="Третья планета"
config/description="Казуальная головоломка для Android: поле 8×16..."
run/main_scene="res://scenes/main.tscn"

Если вы правите project.godot руками, сохраняйте файл в кодировке UTF‑8 без BOM — так русские буквы в названии и описании не повредятся.

Файл export_presets.cfg и пресет Android

Файл лежит рядом с project.godot и может храниться в системе контроля версий: в нём не должно быть секретных паролей от релизного keystore (их добавляют локально или через CI‑секреты).

Основные поля первого пресета:

  • name — строка, которую вы выбираете в диалоге экспорта; здесь это Android.
  • export_path — куда редактор предложит сохранить APK по умолчанию; указан путь ../build/android/tretiya-planeta.apk относительно папки src/, то есть артефакт окажется в build/android/ у корня репозитория.
  • package/unique_name — Java‑совместимый идентификатор приложения (games.threeballs.tretiya_planeta). Его сложно поменять после публикации в магазине без потери установок, поэтому выбирайте осмысленно.
  • version/code и version/name — числовой код для магазина и строка версии для людей; синхронизируйте при необходимости с config/version в project.godot.
  • architectures/* — для реального устройства достаточно arm64-v8a; эмулятор x86_64 можно включить при отладке на эмуляторе Intel.

Минимальный и целевой уровень API заданы как version/min_sdk=24 и version/target_sdk=34 — ориентир на современные требования экосистемы Android (конкретные цифры всегда стоит сверять с актуальной документацией Google Play на момент релиза).

Что нужно настроить на машине разработчика вне репозитория

Godot не включает Android SDK и JDK «из коробки». В Editor → Editor Settings → Export → Android задаются:

  • путь к Android SDK (можно поставить через Android Studio или sdkmanager);
  • путь к JDK 17 (рекомендуемая мажорная версия для современных Gradle‑цепочек Godot);
  • при необходимости — отладочный keystore для подписи debug‑сборок.

После этого в меню Project → Export… должен появиться рабочий пресет Android. Первая сборка может занять время из‑за загрузки Gradle‑зависимостей — это ожидаемо.

Проверка из командной строки без окна редактора

На машине с установленным Godot можно выполнить быструю проверку загрузки проекта:

Godot_v4.4.x_console.exe --display-driver headless --path "путь\к\src" --quit-after 4

Если команда завершилась без трассировки ошибок, базовая целостность project.godot и ссылок на ресурсы в порядке.

Частые проблемы начинающих

  1. «Export templates not installed» — откройте диспетчер шаблонов в редакторе и установите набор для вашей версии движка.
  2. Ошибки Gradle или Java — проверьте переменную окружения JAVA_HOME и совместимость версии JDK с требованиями Godot для вашей версии редактора.
  3. Чёрный экран при запуске сцены — убедитесь, что run/main_scene указывает на существующий файл и что сцена сохранена в UTF‑8.

Что делать дальше по плану

Когда редактор стабильно открывает проект и экспорт Android хотя бы до стадии диалога сохранения APK без системных ошибок SDK, можно переходить ко второму пункту плана: начальный экран и громкость. Рекомендуется завести отдельную сцену ui/ или screens/ и подключить её как следующую после загрузки игры, не перегружая корневой Main всем сразу.

Если вы ведёте блог по правилам репозитория, после каждого шага обновляйте чеклист «Критерий готовности» в соответствующем посте и добавляйте перекрёстные ссылки между соседними шагами — так цикл статей остаётся навигационно связным для читателя.

Ссылка на проект: Third Planet

Ссылка на игру: Google Play Rustore

Next: 4. Перемещение шаров, линии и очки
Аватар автора

Спасибо, что прочитали статью. Посмотрите другие материалы в архиве, там много практических разборов по разным технологиям.


godot Series

# 16. Тени

godot 16 / 19
4 min read

Тени через StyleBoxFlat у ячеек, HUD, слота баннера и карточки результата; стили кнопок на титуле и поле; лёгкий контактный затемнённый слой на шарах-планетах.

Read