Создание игры на 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
Создавайте качественные игры с 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 © 2024 Unity Technologies
- Legal
- Privacy Policy
- Cookies
- Do Not Sell or Share My Personal Information
- Настройки файлов cookie
Unity, логотипы Unity и другие торговые знаки Unity являются зарегистрированными торговыми знаками компании Unity Technologies или ее партнеров в США и других странах (подробнее здесь). Остальные наименования и бренды являются торговыми знаками соответствующих владельцев.
Мы используем cookie-файлы, чтобы вам было удобнее работать с нашим веб-сайтом. Подробнее об этом можно узнать на странице, посвященной политике использования cookie-файлов.
Начало разработки под 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 форматах медиа.
Разработка компьютерной игры в Unity: начните здесь
Любой новый мир начинается с мечты. Unity предлагает все необходимое для ее воплощения. Здесь вы найдете множество советов по разработке вашей первой компьютерной игры. Никаких требований к уровню знаний и навыков: от вас нужно только желание!
Создавайте игру играючи
Начните творить на примере готовых шаблонов Unity Microgame. Каждый из шаблонов имеет свою коллекцию ресурсов Mod, позволяющих играючи изменить исходный шаблон, попутно осваивая основы игрового дизайна, логики взаимодействий, визуализации и многое другое.

LEGO® Microgame
Реализуйте свои творческие идеи с помощью виртуальных блоков LEGOⓇ в нашем новейшем шаблоне Microgame!

FPS Microgame
Взрывайте печеньки, добавляйте симпатичных, но смертоносных роботов, украшайте подземелье. Создайте собственный шутер от первого лица из шаблона FPS Microgame.

2D Platformer Microgame
Разбрасывайте конфетти, устройте феерию света, добавьте бодрости в походку вашего двумерного персонажа в этом милом платформере.

3D Karting Microgame
Набросайте мармеладных мишек, снопы искр и прокачайте свою тачку в веселом картинге.

Your first game jam with Unity
Каждому разработчику нужны единомышленники
Глобальное сообщество Unity предлагает участникам множество способов общения друг с другом. Для новичков доступны гейм-джемы, задачи и группы по интересам (по одной для шаблонов Karting, 2D Platformer и FPS Microgame), которые помогут набраться уверенности и поделиться своими первыми творениями. Мы рады всем желающим!

Made with Unity — Norman’s Island by Little Mountain Animation
Начните творить с Unity
Unity — это самая популярная в мире платформа разработки игр, ведь на ней создано более 50% всех мобильных игр, 60% всего контента для дополненной и виртуальной реальности, а Unity-разработчик — это седьмая по росту популярности профессия согласно недавнему отчету LinkedIn U.S. Emerging Jobs.
Новички могут загрузить Unity бесплатно и начать с готовых ресурсов Unity Microgame и Mod. Учитесь с помощью сотен обучающих материалов, курсов, словарей и игровых наборов — бесплатных или по разумной цене — от Unity и участников нашего потрясающего сообщества.
Вдохновляйтесь, учитесь и творите

Создайте двумерную компьютерную игру
Unity — это ведущая платформа разработки как 2D-, так и 3D-игр. Если вам больше по душе 2D, то здесь можно узнать, как разрабатывать такие игры.

Программирование компьютерной игры в Unity
Вы хотите узнать, как программировать игры? Мы предлагаем множество ресурсов, на примере которых вы сможете научиться программировать на C# в Unity.

Разработайте 3D-игру в Unity
Unity предлагает инструментарий, который поможет вам разработать вашу первую 3D-игру. Начните отсюда, если хотите познакомиться с процессом разработки нового иммерсивного мира для ваших игроков.

Sykoo Sam: начало разработки игр
Sykoo Sam — евангелист Unity в интернете, автор популярного канала, посвященного игровой разработке. Вот несколько советов разработчикам-новичкам.

Thomas Brush: посмотрите это, прежде чем создавать первую игру
Thomas Brush создает игры более 10 лет и готов поделиться мудростью, полезной как начинающим, так и опытным разработчикам.