Оглавление
Время чтения: 18 минут
Создать игру на Android можно самому: на обычном компьютере и бесплатном движке. Путь такой: идея под телефон, движок, прототип с управлением пальцем, запуск на своём смартфоне, графика и оптимизация, тесты и выпуск в Google Play или RuStore. Совсем простую игру получится собрать даже прямо на телефоне.
Мы в AppFox делаем мобильные игры для Android и iOS, от прототипа до релиза в магазинах. Ниже разбираем по шагам, как создать свою игру на Андроид. Цены и сроки берём со страницы нашей услуги, а условия магазинов и движков из их официальных правил.
Коротко: как сделать игру на Андроид за 9 шагов
Если нужна только последовательность, вот она. Каждая карточка ведёт к разбору шага.
- 01 Идея под телефон Выбираем жанр, ориентацию экрана и управление пальцем Описание игры в абзац
- 02 Движок Ставим Unity или Godot и добавляем сборку под Android Проект с платформой Android
- 03 Прототип Собираем главную механику на простых фигурах и учим её слушаться касаний Играбельный прототип
- 04 Запуск на телефоне Включаем отладку по USB и ставим сборку на свой смартфон Игра на своём телефоне
- 05 Графика, звук, интерфейс Рисуем под маленький экран: крупные кнопки и ничего важного под вырезом камеры Готовые ассеты
- 06 Оптимизация Держим плавную картинку на недорогих телефонах и следим за размером сборки Сборка для слабых телефонов
- 07 Тестирование Проверяем на разных экранах и версиях Android, проводим закрытый тест Стабильная сборка
- 08 Публикация Готовим страницу игры и выкладываем её в Google Play и RuStore Игра в магазине
- 09 Доход и обновления Подключаем рекламу или покупки и выпускаем обновления План обновлений
В студии игра проходит похожие этапы: техническое задание, интерфейс и дизайн, программирование, тестирование и поддержка после релиза. С публикацией в App Store и Google Play тоже помогаем. Подробно процесс описан на странице разработки мобильных игр.
Как создать свою игру на Андроид: пошаговая инструкция
1. Придумайте игру, в которую удобно играть на телефоне
Телефон держат в одной руке, играют в метро и в очереди, отвлекаются на звонки. Поэтому мобильная игра отличается от компьютерной ещё на уровне идеи.
- Короткая сессияУровень или раунд короткий, прогресс сохраняется сам
- Ориентация экранаВертикально удобно играть одной рукой, горизонтально помещается больше сцены
- Управление пальцемКасание, свайп, удержание. Чем меньше кнопок на экране, тем лучше
- Слабые устройстваИгра должна идти и на недорогих телефонах игроков
Опишите игру одним абзацем: кто герой, что делает игрок пальцем, почему ему хочется сыграть ещё раз. Для первой игры подойдут раннер, головоломка, аркада на одно касание или простая стратегия. От жанра и графики сильно зависит объём работы: в нашей студии 2D промо-игра стоит от 450 тыс. ₽ и делается за 1–2 месяца, а 3D мобильная игра стоит от 1,5 млн ₽ и занимает 4–8 месяцев. Как выбрать тему, мы разбирали в статье «Какую игру сделать».
Результат шага
2. Установите движок и добавьте сборку под Android
Движок берёт на себя графику, физику, звук и сборку игры под телефон. Для Android-игр берут Unity или Godot, а 2D-игру без кода можно собрать в конструкторе. Сравнение ниже, в разделе «Какой движок выбрать». В студии мы делаем мобильные игры на Unity и Unreal Engine 5.
Сам редактор Unity работает только на компьютере: Windows 10 или 11, macOS или Ubuntu. Версии редактора для телефона нет. Чтобы движок умел собирать игру для Android, к нему добавляют модули. В Unity Hub откройте раздел Installs, у нужной версии редактора нажмите Manage, затем Add modules и отметьте Android Build Support, Android SDK & NDK Tools и OpenJDK. Модули добавляются только к редактору, который установлен через Hub.
Дальше создайте проект по шаблону 2D или 3D и переключите его на Android. В Unity 6 платформу выбирают в окне File → Build Profiles: Add Build Profile, затем Android, снова Add Build Profile и Switch Profile, чтобы профиль Android стал активным. Как установить Unity и разобраться в его окнах, подробно рассказано в нашей статье «Как создать игру на Unity с нуля».
Результат шага
3. Соберите прототип с управлением касанием
Прототип собирают из простых фигур: квадраты вместо героев, прямоугольники вместо платформ. Задача одна: понять, интересно ли играть пальцем, пока на графику не потрачено ни часа.
Вот скрипт для 2D-проекта в Unity, с которым квадрат бежит туда, где палец касается экрана. Его перетаскивают на объект героя, и прототипом уже можно управлять:
using UnityEngine;
using UnityEngine.InputSystem;
// Ведёт героя к точке, которой коснулся палец (в редакторе то же делает мышь)
public class TouchMove : MonoBehaviour
{
[SerializeField] float speed = 6f; // единиц сцены в секунду
Camera cam;
void Start()
{
cam = Camera.main;
}
void Update()
{
// Pointer объединяет касание и мышь: на телефоне это палец
Pointer pointer = Pointer.current;
if (pointer == null || !pointer.press.isPressed)
return;
// Точка касания приходит в пикселях экрана. Глубина: от камеры
// до плоскости, где стоит герой, на ней и окажется цель
Vector3 screenPoint = pointer.position.ReadValue();
screenPoint.z = transform.position.z - cam.transform.position.z;
Vector3 target = cam.ScreenToWorldPoint(screenPoint);
transform.position = Vector3.MoveTowards(
transform.position, target, speed * Time.deltaTime);
}
}
Скрипт читает ввод через Input System, систему ввода Unity. Pointer в ней означает последнее
использованное устройство с курсором или касанием, поэтому в редакторе героя ведёт мышь, а на телефоне палец:
проверять прототип можно, не собирая его под Android. Метод ScreenToWorldPoint переводит точку экрана
в мир игры, но ему нужна глубина, иначе точка окажется у самой камеры. Метод MoveTowards двигает
героя к цели, но не дальше неё, а умножение на Time.deltaTime даёт одинаковую скорость на быстром и
на медленном телефоне.
Из практики AppFox
Первый играбельный прототип мобильной игры мы собираем за 2–4 недели: главная механика, 1–2 экрана и проверка идеи до полноценного производства.
Результат шага
4. Запустите игру на своём телефоне
Мышь в редакторе не заменяет палец: на настоящем экране сразу видно, что кнопки мелкие, а палец закрывает героя. Поэтому прототип ставят на телефон как можно раньше.
- Режим разработчикаВ настройках найдите «Номер сборки» и нажмите на него 7 раз. На Pixel он в разделе «О телефоне», на Samsung в «О телефоне → Информация о программном обеспечении»
- Отладка по USBВ появившихся «Параметрах разработчика» включите «Отладку по USB». На Android 9 и новее они лежат в «Настройки → Система → Дополнительно»
- ПодключениеСоедините телефон с компьютером кабелем и разрешите отладку в окне, которое появится на телефоне
- СборкаВыберите телефон в поле Run Device окна Build Profiles и нажмите Build and Run: Unity соберёт игру, установит её на телефон и запустит
Полная сборка после каждой правки занимает время. Чтобы проверять чаще, в Unity есть три помощника:
- Device SimulatorВстроен в редактор: в окне Game переключитесь на Simulator и посмотрите игру на разных телефонах, с вырезом камеры и поворотом. Скорость телефона он не имитирует
- Unity Remote 5Бесплатное приложение показывает игру из редактора на телефоне без сборки и передаёт касания обратно. Производительность так не проверить
- Patch And RunПри включённом Development Build Unity отправляет на телефон только изменённые файлы, а не всю сборку
Подробнее о подключении телефона мы писали в статье «Разработка приложений на Android: пошаговая инструкция с нуля», для игры шаги те же.
Результат шага
5. Сделайте графику, звук и интерфейс под маленький экран
На телефоне всё мельче, чем на мониторе, а экраны разные: маленькие и большие телефоны, планшеты, экраны с вырезом под камеру и скруглёнными углами. Что учесть:
- Крупные кнопкиОбласть касания не меньше 48 × 48 dp, так советуют Android и Material Design: это около 9 мм на любом экране
- Безопасная зонаКнопки и счёт не прячутся под вырезом камеры и в углах
- Читаемый стильГерой и враги различимы на маленьком экране и при ярком солнце
Безопасную зону Unity отдаёт готовым прямоугольником Screen.safeArea. Скрипт ниже вешают на панель
интерфейса, и она сжимается так, чтобы вырез камеры её не закрывал:
using UnityEngine;
// Сжимает панель интерфейса до безопасной зоны экрана:
// вырез камеры и скруглённые углы не закроют кнопки
[RequireComponent(typeof(RectTransform))]
public class SafeArea : MonoBehaviour
{
void Start()
{
RectTransform panel = GetComponent<RectTransform>();
Rect area = Screen.safeArea; // в пикселях
// Якоря панели задаются долями экрана, от 0 до 1
Vector2 min = area.position;
Vector2 max = area.position + area.size;
min.x /= Screen.width;
min.y /= Screen.height;
max.x /= Screen.width;
max.y /= Screen.height;
panel.anchorMin = min;
panel.anchorMax = max;
}
}
Скрипт считает зону один раз при старте, этого хватает, если ориентация экрана в игре закреплена. Если рисовать некому, берут готовые ассеты: подборка есть в статье «Ассеты для Unity». Перед покупкой проверьте, разрешает ли лицензия использовать ассет в коммерческой игре. Звук не оставляйте на конец: без отклика на касание даже хорошая игра кажется сломанной.
Результат шага
6. Оптимизируйте игру под недорогие телефоны
Игра должна идти плавно и на недорогом телефоне, не греть корпус и не сажать батарею. Проверяйте это на самом слабом устройстве, какое найдёте.
- Частота кадровНа Android Unity по умолчанию рисует 30 кадров в секунду, чтобы беречь батарею. Для динамичной игры в коде ставят Application.targetFrameRate = 60 и смотрят, не греется ли телефон
- ГрафикаМеньше полигонов, сжатые текстуры, без лишних источников света и теней
- 64 битаGoogle Play с 2019 года требует 64-битную версию. В Unity для этого выбирают Scripting Backend IL2CPP и архитектуру ARM64
- Размер сборкиБазовый модуль AAB до 500 МБ, остальное выносят в пакеты Play Asset Delivery. Если игра больше 200 МБ, на мобильном интернете Google Play предупредит игрока о размере
Ещё одно требование Google Play касается игр с нативным кодом, в том числе на Unity: для Android 15 и новее они должны поддерживать страницы памяти 16 КБ. С 1 февраля 2027 года обновление без такой поддержки выпустить будет нельзя. Unity поддерживает их с версии 6000.0.38f1, для Unity 6.3 и новее нужен последний патч. После обновления игру пересобирают вместе с плагинами. Про графический API Vulkan в играх для Android есть отдельная статья «Использование Vulkan API в мобильных играх для Android».
Результат шага
7. Протестируйте игру на разных телефонах
Android работает на тысячах моделей с разными экранами, процессорами и версиями системы. Что проверяют:
- ЭкраныУзкие и широкие, с вырезом и без, телефон и планшет
- ПрерыванияЗвонок, сворачивание, блокировка экрана: прогресс не теряется, звук не играет в фоне
- ПроизводительностьЧастота кадров и нагрев на слабом телефоне после долгой игры
- БалансИгру можно пройти, и при этом она не слишком лёгкая
Самую старую версию Android, на которой пойдёт игра, задаёт движок: Unity 6.0 работает с Android 6.0 и новее, Unity 6.3 и 6.4 с Android 7.1, Unity 6.5 и 6.6 с Android 8.0. Держите под рукой телефон с этой версией.
Аккаунт разработчика в Google Play стоит $25, платёж разовый. У личных аккаунтов, созданных после 13 ноября 2023 года, есть ещё одно условие: перед выходом в продакшн нужен закрытый тест, в котором минимум 12 тестировщиков непрерывно участвуют не меньше 14 дней. В смете казуальной игры из нашего калькулятора на тестирование заложено около 40 часов тестировщика. Как мы проверяем игры, рассказали в статье «Game Over для багов: как мы тестируем игры».
Результат шага
8. Опубликуйте игру в магазине
Главные магазины для Android в России: Google Play и RuStore. Для Google Play собирают подписанный Android App Bundle, файл .aab: для новых приложений этот формат обязателен с августа 2021 года. Магазин сам собирает из него APK под конкретные устройства, для этого приложение подключают к Play App Signing. С 31 августа 2026 года новые приложения и обновления в Google Play должны быть нацелены на Android 16 (API 36), отсрочку можно запросить до 1 ноября 2026 года. Требование повышают каждый год, поэтому перед отправкой проверьте актуальную политику target API.
Для страницы игры понадобятся название, описание, иконка, скриншоты и короткое видео с игровым процессом. Условия магазинов сравнили ниже, в разделе «Где выпустить игру для Android». Как подготовить страницу, чтобы игру находили в поиске магазина, мы разбираем на странице ASO-продвижения приложений и игр.
Результат шага
9. Подключите доход и выпускайте обновления
Мобильные игры чаще всего бесплатные и зарабатывают на рекламе и покупках внутри игры: монеты, жизни, отключение рекламы. Решать, как игра будет зарабатывать, лучше ещё на первом шаге: от этого зависят экономика и баланс.
Для игроков из России платёжная система Google Play с 10 марта 2022 года не работает, а разработчикам со счётом в российском банке монетизация в Google Play недоступна с 26 декабря 2024 года. Публиковать и обновлять бесплатные игры можно. Поэтому покупки в игре для игроков из России подключают через RuStore. С платежей внутри приложения RuStore берёт 15 %, подключить платежи могут ИП и юрлица.
После выхода работа продолжается. Игроки находят ошибки, которые пропустило тестирование, а новые уровни и события возвращают тех, кто уже прошёл игру. Студийные игры мы сопровождаем и после релиза: следим за стабильностью, исправляем ошибки, выпускаем обновления и новый контент.
Результат шага
Какой движок выбрать для игры на Android
Все движки из таблицы бесплатны для старта и собирают игру под Android. Различаются они языком, удобством для 2D или 3D и условиями, когда игра начинает зарабатывать.
| Движок | Язык | Лучше всего для | Условия |
|---|---|---|---|
| Unity | C# | 2D и 3D, казуальные игры, RPG и PvP | Бесплатно (Unity Personal), если доход и инвестиции за год не больше $200 000. В Unity 6 заставку «Made with Unity» можно отключить |
| Godot | GDScript, C# | 2D и небольшие 3D-игры | Бесплатно для любых игр, лицензия MIT, без роялти. В титрах указывают копирайт и лицензию движка |
| GameMaker | GML | 2D-игры | Бесплатно для некоммерческих игр. Для продажи нужна лицензия Professional, разовая покупка за $99,99 |
| GDevelop | Без кода, события | Простые 2D-игры | Бесплатно. Облачная сборка под Android на бесплатном тарифе одна в день, на платных больше |
Новичку проще всего начать с Unity или Godot. По Unity много уроков, в том числе на русском. Godot лёгкий и быстро осваивается на 2D-проектах. Для сборки под Android Godot нужны OpenJDK 17, Android SDK и шаблоны экспорта, их ставят через Editor → Manage Export Templates. Пакет AAB для Google Play собирают через Gradle и подписывают релизным ключом. Игры из Godot 4.7 запускаются на Android 7.0 и новее с рендером Compatibility и на Android 9.0 и новее с рендерами Forward+ и Mobile.
Так в Godot выглядит то же управление, что и в прототипе выше: герой идёт туда, где палец коснулся экрана, и следует за пальцем, пока его ведут.
extends Node2D
# Скорость видна в инспекторе, её можно менять без правки кода
@export var speed := 400.0
var target := Vector2.ZERO
func _ready() -> void:
target = position
func _input(event: InputEvent) -> void:
# Касание экрана и движение пальца задают новую цель
if event is InputEventScreenTouch and event.pressed:
target = event.position
elif event is InputEventScreenDrag:
target = event.position
func _process(delta: float) -> void:
# Каждый кадр герой подходит к цели, но не перескакивает её
position = position.move_toward(target, speed * delta)
Godot присылает касания отдельными событиями: InputEventScreenTouch приходит, когда палец коснулся
экрана или оторвался от него, а InputEventScreenDrag, когда палец ведут по экрану. Чтобы проверять
такой код мышью на компьютере, в Project Settings в разделе Input Devices → Pointing включают Emulate Touch From
Mouse: щелчки и движение мыши станут касаниями. Подробнее о движках для игр мы писали в статьях «Чем так хорош движок Unity?» и «Как создать
компьютерную игру с нуля».
Можно ли создать игру прямо на телефоне
Можно, хотя удобнее на компьютере. Редактор Unity есть только для компьютера, а на телефоне игры собирают в приложениях-конструкторах: логику складывают из готовых блоков вроде «если герой коснулся монеты, прибавить очко». Есть и редактор Godot для Android.
- Pocket CodeБесплатное приложение некоммерческого проекта Catrobat: игры собирают из блоков прямо на телефоне. Есть в Google Play и App Store
- GDevelopОфициальное приложение для Android и iOS: игру собирают из шаблонов и событий без кода. Работает бесплатно, в приложении есть реклама и платные функции
- Godot для AndroidОфициальный бесплатный редактор в Google Play. Пока это ранний доступ: интерфейс не подогнан под телефон, лучше подключить клавиатуру и мышь
- RobloxRoblox Studio работает только на компьютере с Windows или macOS. В приложении Roblox на телефоне появилась вкладка Build, где игру по описанию собирает ИИ, но на октябрь 2026 года она в тесте только в Новой Зеландии, Таиланде, Сербии и Сингапуре
Мешает маленький экран: даже официальный Godot для Android советует подключить клавиатуру и мышь. Если игра выросла из пробы, её переносят на компьютер и доделывают там.
Сколько времени и денег уходит на мобильную игру
Самому деньги почти не нужны: движки бесплатны для старта, а платить придётся за регистрацию в Google Play и, возможно, за готовые ассеты. Главный ресурс здесь время.
Если делать игру одному
Маленькая казуальная игра в смете нашего калькулятора набирает около 1 000 часов работы команды: документация, интерфейс, графика, механики, тестирование. Если заниматься игрой по 15 часов в неделю, такой объём займёт около 67 недель, то есть больше года. Поэтому одиночке стоит сокращать масштаб и брать готовые ассеты.
Когда игру делает студия, ориентиры такие. Это цены на мобильные игры в AppFox:
Игровой прототип, 2–4 недели
от 300 тыс. ₽
Главная механика, 1–2 экрана и проверка идеи.
2D промо-игра, 1–2 месяца
от 450 тыс. ₽
Казуальная игра, 2–4 месяца
от 900 тыс. ₽
3D мобильная игра, 4–8 месяцев
от 1,5 млн ₽
Мультиплеер или PvP, 6–12 месяцев
от 3 млн ₽
В казуальную игру у нас входят уровни, экономика, реклама и покупки, аналитика, ASO и подготовка к выходу в магазины. Точную цену называем после брифа: на неё влияют жанр, графика, число уровней, сервер и монетизация.
Где выпустить игру для Android
Для телефона игру выпускают в магазинах приложений или делают браузерной и выкладывают в Яндекс Игры.
| Площадка | Что публикуют | Регистрация | Проверка |
|---|---|---|---|
| Google Play | Android App Bundle (AAB) | $25, разовый платёж | Гарантированного срока проверки Google не называет: она занимает от нескольких часов до семи дней, в исключительных случаях дольше. |
| RuStore | APK или AAB, файл до 5 ГБ | Бесплатно для физлиц, ИП и юрлиц, в том числе иностранных | До 72 часов по правилам модерации |
| Яндекс Игры | Браузерные игры на HTML5, архив до 100 МБ, в том числе для телефонов | Публикация бесплатная, доход от рекламы и покупок в игре. Для Unity есть официальный плагин | |
Студийные игры мы доводим до публикации в App Store и Google Play.
Ошибки, из-за которых мобильные игры не доходят до релиза
- Шаг 1Компьютерная игра на маленьком экранеДесяток кнопок, мелкий текст и долгие сессии. На телефоне в такое не играют.
- Шаг 3Графика раньше механикиКрасивые модели не спасут игру, в которую скучно играть. Сначала прототип на простых фигурах.
- Шаг 4Тест только в редактореМышь точнее пальца, и неудобное управление видно лишь на телефоне.
- Шаг 6Проверка только на своём телефонеУ разработчика быстрый смартфон, у игроков часто нет. Игра тормозит и греет корпус.
- Шаг 8Магазин в последний деньАккаунт, закрытый тест и проверка занимают дни и недели. Их начинают заранее.
- Шаг 9Монетизация после релизаРекламу и покупки, добавленные в готовую игру, приходится втискивать в баланс, который под них не задуман.
Чек-лист перед выпуском в магазин
Отметьте, что уже готово. Если половина пунктов пустая, выкладывать игру рано.
Все пункты отмечены, можно выкладывать. Новую игру со студией начинаем с прототипа: от 300 тыс. ₽, 2–4 недели. Готовую игру сначала разбираем на аудите и после него называем цену доработки.
Обсудить игру со студиейГлавное
- Идея
- Движок
- Прототип
- Телефон
- Графика и звук
- Оптимизация
- Тесты
- Магазин
- Обновления
Чтобы создать игру на Андроид, нужны компьютер, бесплатный движок и свой телефон для проверки. Мобильную игру отличают управление пальцем, короткие сессии и недорогие телефоны игроков. Удобство управления и плавность видно только на настоящем устройстве.
Выкладывать игру стоит и в Google Play, и в RuStore: покупки в игре для игроков из России подключают через RuStore. Начинайте с маленькой игры и проверяйте её на чужих телефонах, так её проще довести до релиза.
FAQ
Можно ли создать игру на Андроид бесплатно?
Да. Unity и Godot можно скачать бесплатно, как и редактор 3D-графики Blender. Публикация в RuStore бесплатная, а за аккаунт разработчика в Google Play платят один раз $25.
Можно ли сделать игру на телефоне без компьютера?
Простую можно: в Pocket Code, приложении GDevelop или редакторе Godot для Android. Но редактор на маленьком экране неудобен, поэтому большую игру обычно доводят на компьютере. Подробнее в разделе «Можно ли создать игру прямо на телефоне».
Какой движок выбрать новичку?
Для 2D и первых проектов Unity или Godot, для простой 2D-игры без кода GDevelop. Условия использования сравнили выше, в разделе «Какой движок выбрать».
Сколько стоит выложить игру в Google Play?
Регистрация стоит $25, платёж разовый. Новым личным аккаунтам перед первым релизом нужен ещё закрытый тест: 12 тестировщиков на 14 дней. Публикация в RuStore бесплатная.
Нужно ли уметь программировать?
Для простой 2D-игры нет: хватит конструктора с событиями. Для 3D, сетевых игр и всего, что выходит за рамки готовых блоков, без кода не обойтись.
Сколько стоит мобильная игра в студии?
Прототип у нас стоит от 300 тыс. ₽, казуальная игра от 900 тыс. ₽, 3D мобильная игра от 1,5 млн ₽, мультиплеер или PvP от 3 млн ₽. Точную цену называем после брифа.
Хотите сделать мобильную игру вместе со студией?
Расскажите об идее, и мы предложим, как довести её до релиза в Google Play и App Store. Подробнее о том, как мы работаем, на странице разработки мобильных игр.