Создание мобильной игры — это итеративный процесс из нескольких этапов: выбор движка, прототипирование геймплея, создание арта и звука, программирование логики, оптимизация под железо, тестирование и публикация в магазинах приложений. Начинать лучше с простого концепта и движка вроде Unity или Godot, постепенно наращивая сложность.
Выбор игрового движка: от задач к инструменту
Движок определяет язык программирования, доступные платформы, кривую обучения и стоимость владения. Нет «лучшего» варианта — есть подходящий под конкретный проект и команду.
| Движок | Основной язык | Сильные стороны | Сложность входа | Лицензия |
|---|---|---|---|---|
| Unity | C# | Огромный Asset Store, кроссплатформенность, поддержка 2D/3D, большое комьюнити | Средняя | Бесплатно до $200k выручки |
| Godot | GDScript (C#, C++) | Полностью открытый исходный код, легкий, узловая архитектура, отличный 2D | Низкая | MIT (бесплатно навсегда) |
| Unreal Engine | C++, Blueprints | Топовая 3D-графика, визуальное скриптирование, мощные инструменты | Высокая | 5% рояльти после $1M |
| Cocos Creator | TypeScript, Lua | Легковесный, фокус на 2D и веб, быстрый старт для казуальных игр | Низкая | Бесплатно (MIT-подобная) |
| Defold | Lua | Минимальный размер билда, высокая производительность, идеален для 2D | Низкая | Бесплатно (открытый код) |
Практический совет: для первой 2D-игры выбирайте Godot — быстрый старт, ноль затрат, понятный язык. Для 3D-проекта с командой — Unity. Unreal оправдан, если нужна фотореалистичная графика и есть опыт C++.
Пять этапов разработки: карта пути
Процесс создания игры делится на последовательные фазы. Переход к следующей фазе без закрытия предыдущей растягивает сроки и увеличивает количество багов.
Концепт и Гейм-дизайн (GDD)
Фиксируйте идею в документе: жанр, целевая аудитория, 핵심ная механика (core loop), монетизация, уникальное торговое предложение. Опишите управление, прогрессию, экономику. GDD — живой документ, он меняется, но его наличие спасает от «размывания» цели.
Прототипирование (Greyboxing)
Собираете «серые коробки» — примитивные кубы и плоскости без арта. Проверяете: весело ли играть? Работает ли управление на таче? Достаточно ли глубины механики? Если прототип скучен — меняйте дизайн, не тратьте время на графику.
Продакшн: Арт, Код, Уровни
Параллельные потоки: художники рисуют спрайты/модели, 애니маторы оживляют, программисты пишут системную логику, геймдизайнеры собирают уровни. Внедряйте ассеты в сборку ежедневно (CI/CD), чтобы ловить конфликты рано.
Тестирование, баланс, оптимизация
Внутренние плейтесты, закрытая бета (TestFlight, Google Play Internal Testing). Собирайте метрики: удержание Day 1/7/30, воронки прохождения уровней, FPS на слабых устройствах. Балансируйте экономику и сложность по данным, а не по интуиции.
Релиз и LiveOps
Публикация в App Store и Google Play. После релиза — поддержка: ивенты, новые уровни, багфиксы, работа с отзывами, А/Б тесты монетизации. Мобильная игра — это сервис, а не коробочный продукт.
Языки программирования и скриптинг
Выбор языка часто диктуется движком, но понимание их отличий помогает планировать найм и обучение.
C#
Стандарт Unity. Статическая типизация, мощная IDE (Rider, VS), огромная экосистема библиотек. Подходит для проектов любого масштаба.
GDScript
Скриптовый язык Godot, похожий на Python. Динамическая типизация, тесная интеграция с редактором, очень быстрая итерация. Идеален для инди и прототипирования.
C++
Основа Unreal Engine. Максимальная производительность и контроль памяти. Кривая обучения крутая, требует опыта управления памятью и указателями.
Lua
Легковесный, встраиваемый. Используется в Defold, LÖVE, Corona/Solar2D. Прост для изучения, быстрый в рантайме, популярен в мобильной разработке 2D.
TypeScript / JS
Cocos Creator, PlayCanvas, Phaser. Типизация (TS) спасает от ошибок в больших проектах. Единый стек для веб-сборок и нативных врапперов.
Графика, звук и интерфейс: пайплайн ассетов
Визуал и звук формируют первое впечатление за секунды. На мобильных жесткие ограничения: память видеокарты, разрешение текстур, частота кадров.
Ключевое правило: используйте атласы текстур (Texture Atlases) и пулинг объектов (Object Pooling). Каждый Draw Call и каждый вызов Instantiate/Garbage Collection ест кадры. Соблюдайте бюджет: 30–50 Draw Calls, текстуры ASTC, модели
2D: Спрайты и Spine
Асеprite, Photoshop для пиксель-арта. Spine/DragonBones для скелетной анимации — экономит память и позволяет смешивать анимации. Экспорт в атласы.
3D: Blender → GLTF
Blender — стандарт де-факто для инди. Экспорт в GLTF/GLB с морфами и скинингом. Оптимизируйте геометрию (Decimate), запекайте свет в текстуры (Lightmaps).
UI/UX: Figma → Engine
Проектируйте интерфейс в Figma с учетом Safe Area (вырезы, шторки). Экспортируйте SVG или PNG @2x/@3x. Используйте Canvas Scaler (Scale with Screen Size) и Anchors для адаптации под любые соотношения сторон.
Аудио: FMOD / Wwise
Мидлварь для адаптивного звука. Сжатие Vorbis/Opus для музыки, ADPCM для SFX. Микшируйте под мобильные динамики (моно-совместимость, громкость -14 LUFS).
Мобильная специфика: управление, экраны, производительность
Телефон — не ПК. Нет клавиатуры, нет мыши, есть тач, акселерометр, уведомления, звонки, разные DPI и термальный троттлинг.
Ошибка: Управление «как на ПК»
Виртуальный джойстик поверх геймплея, мелкие кнопки, ховер-эффекты, требование двух рук там, где можно одной.
Контекстные действия (тап по врагу = атака), свайпы для камеры/движения, автоприцеливание, крупные хит-зоны (минимум 48×48 dp), поддержка геймпадов и клавиатур (для планшетов/Chrome OS).
Ошибка: Тест только на флагмане
Разработчик играет на iPhone 15 Pro / Galaxy S24. Игрок запускает на трехлетнем бюджетнике с 3 ГБ ОЗУ и Adreno 610. Игра вылетает или выдает 15 FPS.
Обязательный «ферма устройств» или облачные фермы (Firebase Test Lab, BitBar). Профилируйте Profiler (Unity) / RenderDoc. Настройте Quality Settings: LOD, Shadow Distance, Pixel Light Count, Texture Mipmaps. Включите GPU Instancing и SRP Batcher.
Три кита оптимизации: снижение Draw Calls (Static/Dynamic Batching, GPU Instancing), сжатие текстур ASTC (блок 4×4 или 6×6), управление памятью (Addressables/AssetBundles, пулинг, избегание аллокаций в Update).
Публикация: App Store и Google Play
Релиз — это отдельный инженерный и бюрократический этап. Ошибки в метаданных или сертификатах стоят дней ожидания модерации.
1. Аккаунты разработчика
Apple Developer Program — $99/год (индивид или компания). Google Play Console — $25 разово. Для юридических лиц нужен D-U-N-S номер (Apple) и верификация (Google). Оформляйте заранее — верификация занимает до недели.
2. Сертификаты и профили
iOS: Distribution Certificate + Provisioning Profile (App Store) через Xcode или Fastlane match. Android: Keystore (JKS/PEPK) — сгенерируйте один раз, храните пароли безопасно, без него обновления невозможны. Подписывайте App Bundle (AAB).
3. Сборка и архивация
Unity: Build Settings → iOS (Xcode project) / Android (AAB). Il2CPP для обоих — быстрее и безопаснее. Strip Engine Code (High), Managed Stripping Level (High). Проверьте архитектуры: arm64 (обязательно), armv7 (опционально для старых Android).
4. Метаданные и ASO
Иконка 1024×1024 (без скруглений, система скруглит). Скриншоты: 6.5″ и 5.5″ для iOS, 7-8 штук для Google (Phone, Tablet). Видео превью (30 сек, без звука для автовоспроизведения). Ключевые слова (100 симв. iOS), описание (4000 симв.), название (30 симв.). Локализуйте под топ-10 языков.
5. Модерация и выпуск
App Store: 24–48 часов, строгие гайдлайны (Human Interface, нет скрытых фич, контент для 4+ / 9+ / 12+ / 17+). Google Play: быстрее (часы), но потом могут удалить за нарушение политик (Data Safety, Permissions, Spam). Готовьтесь к режектам: читайте Resolution Center, фиксите, ресабмитьте.
Чек-лист перед сабмитом
- Удалены Debug.Log / print / консольные читы.
- Проверены покупки (IAP) в sandbox / test tracks.
- Работает Deep Linking / Universal Links.
- Privacy Policy URL в настройках приложения и консоли.
- Data Safety Form (Google) / App Privacy (Apple) заполнены честно.
- Иконки уведомлений (notification icons) прозрачные, белые.
- Поддержка отключения интернета (офлайн-режим или грациозная ошибка).
Монетизация: как игра приносит доход
Модель закладывается на этапе концепта, так как она диктует геймдизайн, прогрессию и ретеншн. Смена модели после релиза — боль и риск потери аудитории.
Рекламная (F2P)
Rewarded Video (награда за просмотр) — золотой стандарт, высокий eCPM, игрок волен. Interstitial (межуровневые) — осторожно, каждую 2-3 минуты. Banner — низкий доход, ест экран. Mediation (AdMob, IronSource, Unity Ads, AppLovin MAX) максимизирует заполнение.
Внутриигровые покупки (IAP)
Consumable (валюта, энергия), Non-consumable (снимает рекламу, открывает контент), Subscription (батл-пассы, VIP). Ценообразование: точки входа $0.99, $4.99, $19.99, $99.99. Анализируйте ARPPU и конверсию платящих (обычно 1–3%).
Премиум (Paid Upfront)
Один раз платишь — играешь навсегда. Сложно для мобилы: нет возвратов в Google (2 часа), в Apple — сложно. Нужен сильный бренд или уникальный геймплей (Monument Valley, Minecraft). Нет долгой LTV, весь доход — в первый день/неделю.
Гибридные модели
Классика: F2P с рекламой + IAP убрать рекламу + IAP за контент/валюту + Battle Pass (сезонный контент за grind/плату). Дает максимальный охват (все играют) и высокую потолковую монетизацию (whales). Требует сложной аналитики.
Типичные ошибки новичков и как их избежать
Повторение чужих грабель экономит месяцы разработки. Ниже — паттерны провалов и противодействие.
Scope Creep (разбухание объема)
Хочется добавить «еще одну фичу», «крутой босс», «мультиплеер». Результат — проект никогда не заканчивается.
MVP и жесткий дедлайн
Определите Minimum Viable Product: одна механика, 10 уровней, без мета. Релизьте это. Допиливайте в LiveOps. Правило: «Если сомневаешься — вырезай».
Игнорирование профилирования
«Оптимизирую в конце». В конце профайлер показывает 2000 Draw Calls, утечки памяти, GC Spikes каждые 30 кадров. Переписывать архитектуру поздно.
Профилируй с первой недели
Unity Profiler / Xcode Instruments / Android Studio Profiler — открыты всегда. Бюджет кадров: 16.6 мс (60 FPS) или 33.3 мс (30 FPS). Фиксий регрессии сразу.
Плохой онбординг (First Time User Experience)
Стена текста, туториал «кликни сюда, теперь сюда», 5 минут до первого действия. Игрок уходит за 30 секунд.
Учи через игру (Learn by doing)
Первое действие — через 5 секунд. Одно правило за раз. Визуальные подсказки (подсветка, жест пальца). Прогресс-бар онбординга. Тестируйте на людях, не видевших игру.
Отсутствие аналитики с дня нуля
Запустили — не знаем, куда деваются игроки. Почему Day 1 = 25%? Где воронка ломается?
События: start, level_complete, fail, purchase, ad_watch
Firebase Analytics / GameAnalytics / Adjust / AppsFlyer. Настройте до первой тестовой сборки. Смотрите Retention Day 1/7/30, Session Length, Funnel Conversion. Принимайте решения по данным.
Чек-лист готовности к релизу
Перед нажатием «Submit for Review» пройдитесь по пунктам. Любой пропуск — риск режекта или критического бага в продакшене.
- Игра стабильно работает 30+ минут на эталонных устройствах (iPhone SE/12/15, Galaxy A/S серии, бюджетный Android) без крашей и утечек памяти.
- Все платформенные требования выполнены: Safe Area, поддержка Split View (iPad),/runtime permissions (Android 13+ уведомления, фото), целевой API Level 34+.
- Монетизация протестирована в sandbox: покупки проходят, расходники списываются, подписки продлеваются, реклама показывается (test IDs заменены на продакшн).
- Аналитика логирует ключевые события: first_open, tutorial_start/finish, level_start/finish/fail, shop_open, purchase, ad_impression/reward.
- Локализация проверена носителями или качественным MT+постэдитом для всех поддерживаемых языков. Тексты помещаются в UI (немало языков длиннее английского на 30–50%).
- Подготовлены ассеты для стора: иконки (1024, 512, 192, 48), скриншоты всехrequired разрешений, промо-графика (Feature Graphic 1024×500 для Google), видео превью (Portrait/Landscape).
- Privacy Policy опубликована на сайте, ссылка работает в консоли и в меню игры. Data Safety / App Privacy заполнены согласно реальному сбору данных (IDFA/GAID, IP, аналитика, реклама).
- Настроен Remote Config (Firebase / собственное) для геймдизайн-параметров (цена, сложность, частота рекламы) без апдейта бинарника.
- Есть план пост-релиза: хотфикс в 24ч, первый контент-апдейт через 2 недели, ивент через месяц, работа с отзывами (шаблоны ответов).
С чего начать прямо сейчас
Не ждите «идеального момента» или команды. Откройте редактор кода или движок сегодня.
- Напишите однострочный питч: «Игра про [механика], где игрок [действие] чтобы [цель]». Если не укладываетесь в предложение — концепт размыт.
- Выберите движок по таблице выше. Скачайте LTS-версию (Unity 2022.3, Godot 4.x).
- Сделайте прототип за выходные: движение, одна цель, условие победы/поражения. Никакого арта — кубы и шейдер Unlit.
- Поиграйте сами и покажите 3 людям. Спросите: «Что ты чувствовал? Что было неясно? Хочешь продолжить?».
- Заведите репозиторий (Git) и таск-трекер (Trello, Notion, Jira). Разбейте GDD на тикеты на 1–2 дня.
Главное — начать маленький и закончить. Готовая простая игра лучше идеальной незаконченной. Каждый релиз — опыт, метрики и шаг к мастерству.
Надоели сериалы и однотипные игры? 🎬
Попробуйте текстовые ролевые игры с ИИ-персонажами — это как интерактивная книга, где главный герой вы сами. Никакого пассивного просмотра: вы говорите, действуете и влияете на сюжет. ИИ подыгрывает в роли персонажа и ведёт историю дальше — увлекает не хуже любимого сериала, только теперь главный — вы.
Попробовать новый формат 👉 https://clck.ru/3Ta8kQ

