Создание игры на Android
Представляем вам курс по созданию мобильной 2D игры на Андроид. Игра будет создана на движке Unity. В игре мы реализуем множество концепций игрового движка и познакомимся с разработкой игр на нем.
Видеоурок
Ссылки из видео:
- Скачать игру на Android ;
- Скачать игру на IOS .
Unity – это движок, на котором строится большая часть современных игр на разных платформах. Посредством движка реально создавать игры, ориентированные на запуск на компьютерах (Windows, Linux, MacOS), мобильных телефонах, планшетных компьютерах (Android, iOS) и даже игровых приставках PlayStation, Xbox, Nintendo.
Как создавать игры в Unity?
В основе Unity лежит компонентно-ориентированная концепция. По сути, любая игра состоит из массы объектов, разбавленных дополнительными компонентами. Для примера, во время создания платформера мы создаём GameObject, к нему дополнительно прикрепляем графическую составляющую, что отвечает за отображение персонажа, и управляющий компонент, он обеспечивает управление персонажем за счёт мыши, клавиатуры, джойстика или тачскрина. Движок не накладывает ограничения на количество подобных модулей. К GameObject можем добавить столько компонентов, сколько будет необходимо. Вся работа на движке строится на том самом создании GameObject и применение к ним подходящих компонентов.

Новичков может ввести в заблуждение видимая простота процесса, хотя это не так. Для создания уникальной и популярной игры придётся с нуля писать массу компонентов. Если точнее, в среде Юнити это называется скриптом. Родной язык создания скриптов – C#, но ещё частично используется JavaScript и Boo (обрезанный вариант Python). Создать собственные компоненты нелегко, можно даже сказать – это сложная процедура, напрямую завязанная на классическом программировании. Без наличия достаточного уровня знаний в программировании придётся несладко.
Поддерживаемые платформы
Многие крупные проекты предпочитают Unity из-за огромного списка платформ совместимых с движком. Готовое приложение реально запустить на любой компьютерной операционной системе, популярных мобильных платформах и SmartTV. Что уж говорить, даже браузерные игры и приложения для специфических платформ (вроде Tizen OS) преимущественно разрабатываются на Юнити.
Однако, здесь не всё так гладко. При необходимости можно писать специфические алгоритмы, основанные на низкоуровневом коде, под тот же самый Андроид нужно иметь доскональные знания Java.

То же самое справедливо и в отношении iOS. Ещё одна особенность iOS, что под неё разрабатывать возможно только с компьютера или планшета от Apple. При отсутствии Macbook или аналогичного устройства выпуск игры быстро застопорится и Unity здесь вовсе не причём, Apple сама накладывает подобное ограничение. Вывод прост: если в планах есть iOS-разработка, заранее следует подобрать подходящее устройство для сборки.
Как и где разработать игру на движке?
Длительный процесс разработки игр можем проводить как в рамках Windows, так и Mac OS X. Уже существуют версии редактора под Linux, но рассчитывать на стабильную их работу пока что не приходится. Большую часть времени по созданию игры разработчик проводит внутри редактора Unity. Ещё приходится много времени писать код скриптов, его создавать можем либо в стандартном MonoDevelop, либо в любом редакторе стороннего разработчика. Сейчас активно пользуются Visual Studio, а также Sublime Text, но только при должной настройке.
Начало разработки под Android
Разработка игр для устройств с Android OS требует подхода, схожего с разработкой под iOS. С другой стороны, аппаратное обеспечение Android-устройств не подчиняется чётким стандартам, что заставляет решать вопросы, которые отсутствуют при работе с iOS. Также присутствуют различия между версиями Unity для Android и iOS.
Подготовка среды разработки для Android
Прежде чем вы сможете протестировать свои игры на устройстве, вам нужно будет подготовить среду разработки. В частности — скачать и установить Android SDK нужной платформы и добавить ваше устройство в систему (этот процесс отличается для Windows и Mac). Об этом подробно написано на сайте Android-разработчиков, а также дополнительную информацию может предоставлять производитель вашего устройства. Так как это достаточно сложный процесс, мы приготовили небольшую инструкцию которая поможет вам подготовить всё необходимое для разработки. Если вам понадобится больше информации, вы сможете получить её на портале Android-разработчиков.
Доступ к функциям Android
Unity предоставляет API для доступа к средствам ввода и настройкам Android. Доступные классы задокументированы на странице Написание кода для Android сборок.
Привязка C, C++ или Java кода к скриптам
Unity позволяет вызывать функции, написанные на C/C++, непосредственно из скриптов (Java-функции могут быть вызваны непрямым способом). Чтобы узнать как из Unity получать доступ к функциям из нативного кода, посетите страницу о сборке плагинов для Android.
Occlusion Culling (отсечение невидимой геометрии)
Unity предоставляет поддержку occlusion culling, что очень полезно при оптимизации для мобильных платформ. Больше информации можно найти на странице Occlusion culling.
Настройка начальной заставки
Заставка, отображаемая при запуске игры, может быть настроена — см. эту страницу для дополнительной информации.
Решение проблем и сообщения об ошибках
Существует множество причин, из-за которых ваше приложение вылетает или не работает должным образом. Наше руководство по решению специфических для Android проблем поможет вам разобраться с причинами ошибок в кратчайшие сроки. Если после прочтения руководства вы предполагаете, что проблема именно в Unity — вам следует составить сообщение об ошибке. Обратитесь к этой странице за инструкциями.
Как Unity для Android отличается от версии для настольных компьютеров
JavaScript со строгой типизацией
Для улучшения производительности в Android-версии Unity динамическая типизация в JavaScript всегда отключена (как если бы к каждому скрипту автоматически применялась #pragma strict). Это важно помнить, если вы переносите на Android проект со старших платформ, и если вы столкнётесь с ошибками компиляции — проблему стоит искать в первую очередь в типизации. С такими ошибками обычно легко справиться, убедившись что типы всех переменных явно указаны или приведёны при инициализации.
ETC — рекомендуемый способ сжатия текстур
Хоть Unity Android и поддерживает DXT/PVRTC/ATC текстуры, Unity распакует текстуры в формат RGB(A) при выполнении, если эти методы сжатия на поддерживаются на конкретном устройстве. Это может серьёзно повлиять на производительность GPU отрисовки, потому рекомендуется использовать формат ETC. Он является фактическим стандартом для Android, и должен поддерживаться всеми современными устройствами. С другой стороны, ETC не поддерживает альфа-канал, и иногда 16-битные RGBA текстуры будут лучшим выбором по критериям качества, размера и скорости рендеринга там, где нужен альфа-канал.
Также возможно создать несколько дистрибутивов игры (apk-файлов) с разными форматами текстур, чтобы Android Market сам предоставлял для каждого устройства наиболее подходящий из дистрибутивов. За подробностями обратитесь к этой странице.
Проигрывание видео.
Видео текстуры (MovieTexture) не поддерживаются на Android, но программно доступно полноэкранное поточное проигрывание. Для дополнительной информации о поддерживаемых форматах файлов и API скриптинга, ознакомьтесь со страницой класса MovieTexture или со страницей поддерживаемых на Android форматах медиа.
Более 70% популярных мобильных игр были созданы на движке Unity
Присоединяйтесь к миллионам разработчиков мобильных игр по всему миру, которые используют Unity для создания успешных игр нового поколения.
Improve your workflows and create living worlds with Unity AI’s text-prompt generation, asset creation, neural net data integration, and more. Sign up now
Mobile games made with Unity
Learn from games and studios that are excelling on mobile.

Subway Surfers
SYBO and Unity’s 10-year partnership helped Subway Surfers remain one of the top mobile games.

Call of Colors
Passion Punch Studio
Passion Punch Studio reduced their app’s download size and tested multiple content ideas with Unity’s Cloud Content Delivery (CCD).

Card Crawl Adventure
Tinytouchtales
Arnold Rauers of Tinytouchtales built his business using the Unity Editor and runtime, Ads, and Asset Store.
Why Unity for mobile game development?
In the competitive mobile game market, swift prototyping and access to player data boosts your chances for success. Beyond our industry-leading game engine, Unity meets you across the entire mobile game development lifecycle with tools and services for rapid iteration, performance optimization, player engagement, and revenue growth.
![]()
8 mobile game design tips from the creators of MARVEL SNAP
Build your mobile game
Iterate quickly to create standout games. Learn how to build for mobile, get started faster, and maintain performance across a wide variety of devices.

Profiling tools
Boost mobile performance with profiling tools like Frame Debugger, which targets key metrics for optimal device compatibility.

Unity Asset Store
Speed up your development pipeline with premade mobile-ready assets and plug-ins.

Universal Render Pipeline (URP)
Create standout visuals on mobile. Optimize and maintain visual fidelity across mobile platforms and devices with URP.
Live operations
Unity Gaming Services enables actionable analytics and efficient LiveOps updates without client code changes.

Analytics solutions
Access end-to-end data and analysis solutions, designed to support your entire studio.

Player engagement
Test and update gameplay without app updates or client code changes.

Configure and manage
Lay the foundations for seamless live game management.
Solutions across the mobile growth cycle
Leverage proven solutions to publish your game, generate revenue, and scale your user base cost effectively.

Unity LevelPlay
Maximize ad revenue with minimum hassle. Unity LevelPlay ad mediation creates a real-time auction to optimize and automate ad monetization operations.

ironSource and Unity Ads
Run campaigns at scale with two of the leading ad networks – ironSource and Unity Ads – which perform optimally within LevelPlay to drive more revenue and deliver better ROAS.

Tapjoy Offerwall
Tapjoy Offerwall helps diversify revenue streams and boost retention with player offers for in-game currency.

Supersonic
Supersonic is the most-downloaded hypercasual publishing platform in the world, combining advanced technology with deep transparency.
Свяжитесь с экспертом
Чтобы узнать больше решения о решения Unity для своей студии, обратитесь в отдел продаж. Также можно подписаться на рассылку Unity, чтобы получать новости, обучающие материалы и предложения прямо на свою электронную почту.
Ответы на часто задаваемые вопросы
Какие мобильные игры созданы с помощью Unity?
Более 70% всех мобильных игр созданы с помощью движка Unity. Вот лишь несколько из многих тысяч замечательных игр, созданных с Unity:
- Age of Magic, Playkot
- Among Us, InnerSloth
- Arena of Valor, Tencent Games
- Hitman GO, Square Enix
- Last Day on Earth, Kefir
- Little Orpheus, The Chinese Room
- Monument Valley, ustwo
- Shadowgun War Games, MADFINGER Games
- The Seven Deadly Sins: Grand Cross, Funny Paw
Прочитайте другие истории игр, созданных с помощью Unity, здесь.
Как можно использовать Universal Render Pipeline?
Вы можете создать мобильную игру для различных платформ, используя Universal Render Pipeline (URP). В этой подробной технической электронной книге представлен обзор URP, в том числе освещения, шейдеров и многого другого. Подробнее.
Как уменьшить размер сборки?
Узнайте, как уменьшить общий размер сборки и обновлять игру, не заставляя игроков каждый раз скачивать новую версию. Подробнее.
Каких лучших методик стоит придерживаться при создании мобильных игр?
Узнайте, как Alt Shift, Broken Arms Games, Light Brick Studio, Robot Squid и Superplus Games справляются с трудностями и используют возможности быстро растущего рынка мобильных игр.
Как научиться разрабатывать мобильные игры?
Unity Learn предоставляет множество обучающих материалов и примеров проектов, которые помогут вам начать работу. Вот лишь несколько примеров, которые помогут вам приступить к разработке:
Trash Dash — это пример бесконечного раннера, позволяющий изучить архитектуру программы, а также способы применения Cloud Build, Ads/IAP и Unity Analytics.
Tanks! — это обучающий проект, который помогает изучить базовый ввод, физику, аудио, микширование и игровую архитектуру.
Ознакомьтесь с другими примерами в Unity Learn.
Разработка игр для Android
Создавайте качественные игры с Unity, ведущей платформой разработки, которой доверяют разработчики 75% игр на мобильном рынке Android.
72% из 1000 самых популярных мобильных игр были созданы на движке Unity
Более 50% всех мобильных игр разработаны на Unity
Unity работает в основе более 75% самых успешных игр Google Play
Охватите более 1 миллиарда игроков с помощью Unity Distribution Portal
Разработайте новую мобильную игру для Android

Воплощайте творческие замыслы
РАЗРАБОТКА
Unity Pro Создайте игру мечты и сделайте ее успешной.
Unity Asset Store Ускоряйте разработку игр благодаря инструментам, ассетам и шаблонам.
Plastic SCM Обеспечьте эффективную командную работу программистов и художников.
Multiplayer Размещайте и поддерживайте игровые серверы.
Game Backend (бета-версия) Храните данные игры в управляемой облачной инфраструктуре.

Подробная аналитика и быстрые исправления
ОПТИМИЗАЦИЯ
Backtrace Выявляйте, сортируйте и устраняйте ошибки с помощью кроссплатформенной системы управления ошибками и исключениями.
Unity Gaming Services Analytics Анализируйте показатели игры и поведение игроков.

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

Развивайте успешный бизнес
МОНЕТИЗАЦИЯ
Unity Ads Увеличивайте доход и привлекайте новых пользователей, используя внутриигровую рекламу.
Встроенные покупки Упрощенная интеграция для различных магазинов приложений.

Издайте лучшую игру для Android на Chrome OS
Охватите больше игроков, перенося Android-игры на устройства Chromebook, самый быстрорастущий на сегодняшний день сегмент ПК, с помощью Google и Unity.
Истории успеха

Ludo King от Gametion
Узнайте, как студия Gametion, которая только недавно освоила Unity, с помощью простой и знакомой игровой концепции завоевала более 1 миллиона установок на мобильном рынке менее чем за 25 дней после выпуска на Google Play.

Chaos Lords от Digital Pill
Узнайте, как студия Digital Pill выпустила игру и охватила более 1 миллиарда игроков с помощью Unity Distribution Portal.

Last Day on Earth от Kefir
С помощью технологий и магазинов приложений студия Kefir добилась невероятных 83 миллионов загрузок, 1 миллион активных пользователей ежедневно (DAU), и более 125 млн $ валового дохода с игрой Last Day on Earth — и это не предел.
Ресурсы

Освойте Samsung Adaptive Performance
Наше партнерство с Samsung позволяет оптимизировать игры для самых популярных Android-устройств. Воспользуйтесь удобными инструментами для поддержания оптимальной производительности приложений на любых устройствах Samsung.

Оптимизировано для миллиардов мобильных устройств
Мы заключили партнерское соглашение с Arm, ведущим мировым производителем полупроводниковых устройств, для повышения производительности приложений на миллионах графических и центральных процессоров Arm.

Внедрите технологии AR в вашу мобильную игру
Unity AR Foundation упрощает разработку мультиплатформенных игр с дополненной реальностью. Наше партнерство с Google ARCore позволяет разработчикам игр для Android использовать новые функции ARCore в день их выхода.

Осваивайте возможности мобильной разработки
Узнайте о функциях Unity, которые созданы специально в помощь разработчикам впечатляющих, производительных мобильных игр.
От идеи до успешной реализации
Присоединяйтесь к миллионам разработчиков мобильных игр по всему миру, которые используют Unity для создания успешных игр нового поколения.
Социальная
Copyright © 2023 Unity Technologies
- Legal
- Privacy Policy
- Cookies
- Do Not Sell or Share My Personal Information
- Настройки файлов cookie
Unity, логотипы Unity и другие торговые знаки Unity являются зарегистрированными торговыми знаками компании Unity Technologies или ее партнеров в США и других странах (подробнее здесь). Остальные наименования и бренды являются торговыми знаками соответствующих владельцев.
Мы используем cookie-файлы, чтобы вам было удобнее работать с нашим веб-сайтом. Подробнее об этом можно узнать на странице, посвященной политике использования cookie-файлов.
