обучение создания игр на андроид
Опыт создания игры для Android в одиночку с нуля и как ее зафичерили на Google Play
Сужать круг поиска, чем именно заниматься, было тяжело. Знакомых в этой области не было, поэтому решил отталкиваться от каких-то общих соображений. Так как в приоритете было в первую очередь найти что-то интересное, выбор пал на геймдев. Понравилась идея для начала сделать простенькую 2D-игру под Android и выложить на Google Play.
Немного уделив времени теории (алгоритмам, структурам данных и проектированию), для дальнейшего изучения я выбрал язык Java, который по сути является официальным языком Android, да и в целом очень популярен. В качестве фреймворка приглянулся LibGDX, бесплатный, разработка на нем ведется как раз на Java, и вдобавок он кроссплатформенный. Хотя для следующей игры планирую осваивать всем известный Unity.
Стоит заметить, что из теории самым полезным для меня было изучение шаблонов проектирования в ООП. Применение этих шаблонов мне очень часто помогало на практике, и к книжкам по проектированию я возвращался много раз. Когда ты изначально выстраиваешь правильную структуру кода, грамотно организуешь взаимодействие объектов, это очень упрощает процесс добавления нового функционала в код или его исправление, работать становится намного удобнее.
После создания нескольких пробных игр я взялся за игру, которую в конечном итоге и опубликовал на Google Play. Это казуальная геометрическая аркада, где главная цель — уворачивание от препятствий.
Я не буду здесь описывать здесь процесс создания игры. Если у кого-то есть вопросы, могу ответить в комментариях, или возможно напишу об этом отдельную статью.
Скажу лишь, что сильно затянул процесс разработки, уделял много внимания вещам, которые того не стоили. Пожалуй, наступил на все возможные грабли, на которые обычно наступают новички. Создание игры заняло около года, если не учитывать перерывы и обучение программированию. Все кроме музыки делал сам. С музыкой мне очень помог хороший знакомый.
Говорят, что продвижение игры надо начинать заниматься задолго до релиза. Этого я, конечно, не делал. Продвигать начал сразу после релиза игры. Сделал простенький сайт, трейлер игры, разослал запросы на обзор в кучу разных ресурсов, в том числе англоязычных (ответов получил очень мало, и в основном просили оплату), обновлял соцсети. Из платных методов: купил обзор на 4pda по программе поддержки разработчиков и попробовал рекламные кампании на Facebook и Adwords.
В итоге ни платные, ни бесплатные методы продвижения не принесли мне желаемого эффекта и я практически прекратил попытки. Количество скачиваний игры в день после этого опустилось до 10-40 и игра почти не подавала признаков жизни. Однако мне повезло, и неожиданно для меня Google Play зафичерил меня в разделе Indie Corner. Это не очень популярный раздел по меркам Google Play, но тем не менее количество скачиваний только благодаря ему сильно выросло и в отдельные дни достигало более 2000.
Думаю вместо слов, вам будет больше интересно увидеть статистику. Это данные спустя 2 месяца после релиза и 2 недели после начала фичеринга:
Активные установки / Всего установок: 8400 / 37000
Рейтинг на Google Play: 4.2 (148)
DAU/MAU: 3400 / 33000 (количество уникальных юзеров в день / в месяц)
Среднее время игры в день на юзера: 8m 31s
Среднее количество сессий в день на юзера: 1.6
Юзеров без критических ошибок: 99.6%
Таким образом, я получил возможность сравнить аудиторию, привлеченную через Adwords, и органику. Интересно, что между ними есть существенная разница. “Органический” юзер намного чаще оставляет отзыв, чаще делает покупки (все равно очень редко, но ни один юзер из Adwords до этого не делал покупок), и у него дольше игровые сессии. Хотя, к сожалению, удержание у него значительно хуже (удержание на первый день 25% у органики против 38% у юзеров с Adwords).
Подводя итоги, скажу, что игра до сих пор в небольшом минусе. Но ожиданий от первой игры особых и не было, а опыт получил ценный и интересный.
Если мой рассказ получился сумбурным, задавайте вопросы, уточню, что смогу.
Научись создавать гипер-казуальные игры на движке Unity и пройди весь путь создания первой мобильной игры.
Начало обучения: сразу после регистрации.
— Преподаватель: Игорь Зверев, создатель крайне успешных гипер-казуальных игр (Bowmasters, Make it Perfect, Tank Stars).
— Ты научишься работать в Unity, работать с ассетами и создавать простейшие игровые механики.
— В итоге ты создашь собственную игру, которую можно будет запустить на Android-смартфоне.
— И всё это без единой строчки кода: только при помощи визуального программирования.
Чего не нужно будет делать?
— Не нужно писать код — мы будем использовать визуальное программирование. Это несложно, и программистом для этого быть не нужно.
— Не нужно моделить — в библиотеке Unity тысячи бесплатных и недорогих 3D-моделей.
1. Основам работы в игровом движке Unity.
Ты узнаешь, как работать с объектами и основными компонентами, как собирать составные объекты и сохранять их в prefab.
2. Создавать простейшие игровые механики, используя визуальное программирование в Bolt.
Научишься работать с простейшими нодами (triggers, events, random range и другие) и разными типами данных (integer, float, boolean)
3. Как подгружать 3D-модели, эффекты, скрипты и анимацию из библиотек ассетов, чтобы не моделить руками.
4. Как собрать билд, чтобы запустить игру на смартфоне на Android (чтобы не усложнять твою жизнь, мы не будем загружать приложение в Google Play и App Store, зато ты сможешь в неё поиграть на любом Android-телефоне, загрузив в него APK файл).
Игорь Зверев работает ведущим геймдизайнером в Voodoo (Make it Perfect) и разрабатывает игры с 2012 года: в частности работал Head of Game Design Department в Playgendary (Bowmasters, Tank Stars).
Игорь разработал с нуля несколько хитов, которые занимали топовые позиции в чартах AppStore: у Bowmasters и Tank Stars по 200 миллионов установок.
Шаг за шагом, повторяя все наши действия, ты не только поймёшь, как устроен упрощённый пайплайн разработки Hyper Casual игр, но и создашь свою первую игру.
Так выглядит одна из механик игры, созданная на визуальном программировании (ни строчки кода!)
Мы также создадим бота, который будет играть роль соперника в этой игре.
В конце курса ты создашь вот такую игру:
Затем ты экспортируешь игру в APK файл, необходимый для загрузки игры на Android-телефон.
Загрузив этот файл в телефон, ты сможешь поиграть в неё.
Курс для тех, кто не знает, как можно легко сделать игру без участия программистов и 3D-моделлеров, а также для тех, кто очень долго откладывал свой путь в Gamedev.
Многие открывают интернет, видят тысячи сложных технических статей и откладывают создание самой даже простой игры на несколько лет. На нашем курсе ты сделаешь всё за 3 дня!
«Гипер-казуалки» — это игры для всех. Если в автобусе или метро ты видишь, как кто-то играет на телефоне, то, скорее всего, он играет именно в гиперкэж. Такие игры набирают огромную популярность, — как минимум потому, что смартфон сейчас есть у каждого.
Правила создания гиперкэжа такие же, как и у более масштабных проектов, — только в концентрированном и оптимизированном формате. Начинающим разработчикам такие игры позволяют получить опыт, чтобы войти в индустрию максимально легко. Масштабировать механики всегда легче, чем обучаться им на больших проектах, поэтому после гиперкэжа создать что-то масштабное будет проще.
Игра Tank Stars, сделанная преподавателем курса Игорем Зверевым, набрала более 200 миллионов установок
Главная мысль этого курса:
Создавать гипер-казуальные игры проще, чем кажется.
Тебе повезло! Мы живём в такое время, когда техническая сторона упростилась в сотни раз.
Не нужно быть программистом — создавай визуальные ноды. Мы тебя научим! На первый взгляд выглядит страшно, но гораздо проще, чем писать код в блокноте.
Не нужно быть аниматором — тысячи бесплатных анимаций лежат в открытом доступе.
Не нужно быть 3D-моделлером — тысячи бесплатных и недорогих ассетов есть в библиотеке Unity.
Не нужны инвестиции, офис и команда специалистов — ты можешь сделать всё самостоятельно — от идеи до реализации и продвижения.
Чуда не произойдёт. За три дня ты вряд ли напишешь шедевр, который наберёт миллионы установок со всего мира.
Зато мы гарантируем, что за эти три дня ты создашь свою первую игру и пройдёшь упрощённую версию пайплайна её разработки.
Если тебе понравится — продолжай изучение. Фундамент знаний, твоя первая игра и доступ к этому курсу будут с тобой всю жизнь.
1. Обзор основных функций движка Unity и Bolt
📱 Как начать разрабатывать мобильные игры для Android?
Перспективы и направления
Популярные жанры
На рынке мобильных игр представлено множество жанров на любой вкус. Новые появляются каждый день – невозможно перечислить каждую нишевую категорию, поэтому выделим самые популярные.
Multiplayer Battle Arenas представляет собой смесь стратегии в реальном времени и экшена. Игроку предоставляется контроль над одним персонажем, известным как «чемпион» или «герой», которого можно выбрать из большого списка. Нужно собрать команду и разрушить базу противников, защищая собственную.
Battle Royale
MMORPG
Многопользовательские ролевые онлайн-игры – это онлайн-RPG, в которой игроки повышают уровень персонажей и приобретают новые способности. При этом сотни аккаунтов одновременно взаимодействуют друг с другом в одном мире и в режиме реального времени.
Головоломки
Более половины пользователей смартфонов и планшетов играют в головоломки. Candy Crush и Tetris популярны даже среди аудитории, которая не идентифицируют себя как геймеров. Логические игры сосредоточены на простых для понимания, но сложных в освоении механиках и требуют использования быстрого мышления.
Казуальные игры
Эта категория доминирует на рынке игр для мобильных устройств. Казуальные игры являются наиболее популярным жанром среди пользователей Android. Их можно легко начать и отложить в любой момент, что позволяет использовать потенциально короткие периоды игры.
Выбор движка
Unity
Unreal
В новом движке Unreal Engine 4 много изменений по сравнению с предыдущими версиями. В качестве языка сценариев используется C++, который полностью заменил популярный некогда UnrealScript, а Kismet заменен более удобной системой Blueprint. Из-за этих перемен даже опытным дизайнерам игр придется пройти обучение, чтобы освоить обновленную версию.
Unreal поставляется с инструментами для использования технологий виртуальной и дополненной реальности для разработки мобильных игр. В «Библиотеке программиста» вы найдете подробный туториал по созданию первого объекта и освоению Unreal Engine 4.
Solar2D
Это далеко не полный список игровых движков, но одна из популярных платформ может стать вашим счастливым билетом в мир геймдева.
Основные этапы разработки
Чтобы создать мобильную игру под Android, нужно пройти определенные этапы. Предлагаем вашему вниманию пошаговый план для начинающих:
Идея и план
Идея – самый сложный и ответственный шаг к созданию успешной мобильной игры. Ключ к поиску идеи – придумать что-то новаторское и увлекательное. Идея должна понравиться массовой аудитории.
Правильное планирование или его отсутствие могут обеспечить успех или провал проекта. Найдите время, чтобы записать идеи, придумать уникальных персонажей, поиграть с разными стилями и подумать о типе игрового процесса, который сделает вашу игру увлекательной. Раскрыть потенциал проекта поможет история: в игровом мире она имеет огромное значение. Чтобы пройти путь до конца, пользователю нужна цель, а для этого понадобится история, какой бы простой та ни была.
Выбор языка и инструментов
Графика
Создание игрового дизайна намного сложнее создания дизайна обычного приложения. Приходится учитывать множество факторов: историю, персонажей и финальный внешний вид. В первую очередь именно дизайн отличает вашу игру от конкурентов, однако обсчет сложных деталей требует вычислительной мощности – нужно соблюдать баланс между хорошей графикой и производительностью, учитывая возможности мобильных устройств под Android. Далеко не у всех пользователей будут крутые флагманы.
Работа в команде
Небольшие проекты можно делать в одиночку, но для реализации более амбициозных стоит обзавестись командой единомышленников. Вне зависимости от бюджета и сложности, выбор программистов, менеджеров и дизайнеров для совместной работы является важным фактором успеха.
Тестирование, запуск и монетизация
Перед запуском игры ее стоит всесторонне протестировать, но не стоит на этом зацикливаться. Многие начинающие разработчики чересчур усердно пытаются сделать программу идеальной, все время задерживая выпуск. Это серьезная ошибка – лучше быстрее выпустить релиз без критичных багов. Если игра понравится аудитории, ее можно будет улучшить.
Стоит подумать и о монетизации проекта. Существует несколько распространенных способов о ней позаботиться:
Развитие проекта
Если ваша игра собрала значительную аудиторию, не стоит останавливаться на достигнутом. Обновления и улучшения позволят сделать ее лучше и привлечь большее количество довольных геймеров.
Стремительное развитие смартфонов за 10 лет изменило игровую индустрию кардинально. От простых карманных консолей Game Boy мобильные игры эволюционировали до многопользовательских платформ со сложной механикой и интересной визуальной составляющей. Это не должно вас пугать: даже простые проекты в стиле платформеров и казуальных игр могут найти свою аудиторию благодаря доступности и простому управлению.
19 бесплатных курсов по разработке приложений для ОС Android
Привет, друзья! ✋ Ниже я собрал для вас 19 бесплатных онлайн-курсов по разработке приложений на операционную систему Android. Без лишних слов… Приступим к делу! 🚀
1. «Разработка под Android на языке Java» от GeekBrains
Программа обучения
Небольшой курс, предназначенный для ознакомления со спецификой работы OC Android.
Во время его прохождения вы напишете несколько полезных утилит, а также разместите собственное приложение в магазине Google Play.
Материал подходит любому пользователю, который прежде не сталкивался с программированием. По мнению авторов программы, отсутствие опыта работы с Java не должно являться препятствием в создании простейших программ.
Плюсы:
Минусы:
💰 На правах рекламы. «Профессия Android-разработчик» от SkillFactory 💰
Продолжительность курса: 16 месяцев.
Документ об окончании: сертификат.
Формат: видеоуроки + текстовые уроки + тесты + практические задания + вебинары + работа с личным наставником + общение с другими студентами в закрытом Slack-чате + работа над дипломным проектом.
Программа обучения:
Чему научитесь:
2. «Уроки Android Studio» от itProger
Программа обучения
Курс охватывает порядок работы с Android Studio — программой, в которой разрабатываются приложения для данной операционной системой. Во время прохождения материала пользователи научатся программировать на Java.
Каждый урок сопровождается кратким текстовым описанием и кодом, чтобы вам было проще сориентироваться. После просмотра видео вам предстоит выполнить тест. Кроме того, обладателям месячной подписки доступны большие задания по курсу.
Плюсы:
Минусы:
3. «Быстрый старт в разработке Android-приложений» от Coursera
Программа обучения
Первая из трёх частей обширного курса по разработке приложений на ОС Android.
Из неё пользователи узнают базовые элементы работы с Java, что поможет при дальнейшем обучении.
Программа рассчитана на 4 недели, однако вы можете подстроить сроки под себя, повысив или понизив темп работы с материалом.
Партнёрами курса являются: Московский физико-технический институт, компания E-Legion и ФРОО (Фонд развития онлайн-образования).
Автор курса — Марат Тайчинов, с 2015 года работающий в области Android-разработки. За несколько месяцев он прошёл путь от новичка до сотрудника крупной компании. За его плечами призовые места в конкурсах NightHack 2015 и 2016 годов. Именно ему принадлежит работа над этой и двумя следующими образовательными программами. Аналогичная ситуация касается партнёрских организаций.
Плюсы:
Минусы:
4. «Многопоточность и сетевое взаимодействие в Android» от Coursera
Программа обучения
Продолжение предыдущего курса, в рамках которого в полном объёме будет рассмотрено грамотное выстраивание взаимодействия с многопоточностью в приложении.
Вы узнаете о специальных инструментах из Java, которые помогают справиться с поставленной задачей. Также вы поверхностно разберетесь в реактивном программировании. Учтите, что вам понадобятся базовые знания из первого курса для работы с представленным материалом.
Плюсы:
Минусы:
5. «Архитектура Android-приложений» от Coursera
Программа обучения
Последняя часть обширного курса от Coursera, в рамках которой будет рассмотрена работа с наиболее популярными архитектурными подходами.
В результате изучения материала вы узнаете, что такое MVP и MVVM, после чего сможете работать с другими архитектурными компонентами.
На этот раз к Марату Тайчинову присоединится Азрет Магометов — программист компании e-Legion, являющейся партнёрской организацией курса.
Плюсы:
Минусы:
6. «Java для Android-разработчиков» от LoftSchool
Программа обучения
Курс подходит начинающим Android-разработчикам, желающим разобраться в специфике программирования на Java.
Главным преимуществом программы является её практическая направленность, благодаря чему вы достаточно быстро научитесь справляться с поставленными задачами.
Все материалы сопровождаются текстовым описанием и кодом для их более простого изучения. После каждого урока вам будет доступен небольшой тест. Также возможно выполнение больших заданий при наличии подписки.
Плюсы:
Минусы:
7. «Простая игра-лабиринт под Android» от GeekBrains
Программа обучения
Небольшой видеокурс, во время которого вы сможете создать небольшую игру-лабиринт.
В материалах будут рассмотрены все этапы создания приложения, а именно: создание основных классов и каркаса игры, алгоритм генерации лабиринта, а также моделирование пользовательского интерфейса и системы рейтинга. Впоследствии вы сможете перенести полученные знания на выполнение похожих задач.
Плюсы:
Минусы:
8. «Android: погодное приложение» от GeekBrains
Программа обучения
Небольшой курс, во время которого вы сможете разработать собственное приложение, демонстрирующее пользователям актуальный прогноз погоды.
Необходимо учесть, что к его изучению могут приступать только те пользователи, у которых есть опыт работы с си-образными языками. В результате вы создадите программу, использующую API сервиса «Яндекс.Погода». В работе будет использоваться язык Kotlin.
Плюсы:
Минусы:
9. «Разработка Android-приложения» от LoftSchool
Программа обучения
Короткий курс, во время которого вы поймёте специфику разработки приложений под операционную систему Android. После его изучения вы сможете установить и настроить минимальный набор программ, которые требуются любому специалисту по работе с данной ОС. В этот список входят JDK и Android Studio.
Плюсы:
Минусы:
10. «Разработка мобильных приложений для Android» от Stepik
Программа обучения
Краткий курс, предназначенный для пользователей, желающих разрабатывать приложения для операционной системы Android.
Во время изучения материала вы будете пошагово повторять действия преподавателя, после чего сможете написать простейшую программу.
Материал был разработан в партнёрстве с Омским ГТУ. Он идеально подойдёт для студентов, специализирующихся на IT-индустрии. Учтите, что для начала работы с курсом вам нужны базовые знания о программировании и умение работать с Java или Kotlin.
Плюсы:
Минусы:
11. «Базовый курс по Android» от Devcolibri
Программа обучения
Серия видеоуроков от образовательного проекта Devcolibri.com, в рамках которой пользователям предоставляется материал, охватывающий основы разработки на ОС Android.
После просмотра программы вы сможете приступить к изучению более серьёзного и узконаправленного курса, что позволит вам стать профессионалом. Проект Devcolibri направлен на обучение различным навыкам в IT-сфере.
Плюсы:
Минусы:
12. «Уроки по основам разработки Android-приложений на Java» от Start Android
Программа обучения
Курс рассказывает об основах разработки мобильных приложений в Android Studio. После его изучения вы сможете скачать, установить и настроить среду SDK, после чего самостоятельно создадите собственную программу.
Также у вас появится возможность тестирования игр через эмулятор на персональном компьютере.
Несмотря на то, что в курсе 133 видеоурока, каждый из них длится не более 20 минут, что позволит вам смотреть отдельно взятую тему в свободное время. Канал автора курса является образовательным ресурсом, специализирующимся на программировании под Android.
Плюсы:
Минусы:
13. «Kotlin. Уроки по основам разработки Android-приложений» от Start Android
Программа обучения
Ещё один курс от канала Start Android. На этот раз преподаватель расскажет пользователям об основах разработки приложений на языке Kotlin.
Необходимо учесть, что в видеоуроках вы не увидите непосредственно программирования на Kotlin, так как это отдельная спецификация его использования. Материал охватывает ресурсы приложения и создание макетов для экранов. С 4 урока начинается написание программных конструкций.
Плюсы:
Минусы:
14. «Разработка приложений на Android Studio» от N.E.C.O RU
Программа обучения
Обширный курс, в полной мере рассказывающий об основах разработки приложений на Android. Каждый урок охватывает отдельную небольшую тему, в результате чего после изучения материала вы сможете приступить к профессиональному обучению программированию на Java.
Автор канала специализируется на выпуске роликов обо всём, что связано с Android и робототехникой.
Плюсы:
Минусы:
15. «Разработка Android-приложений в Eclipse» от Start Android
Программа обучения
Очередной курс от канала Start Android, на этот раз повествующий о разработке приложений в среде разработки Eclipse.
Уроки отлично подойдут пользователям, которые прежде не сталкивались с созданием программ под Android, однако знающим базовые аспекты программирования на Java. Видеоуроки идут в порядке усложнения материала, что поможет вам без проблем влиться в образовательный процесс.
Плюсы:
Минусы:
16. «Уроки по Kotlin на Android Studio» от N.E.C.O RU
Программа обучения
Подробный курс по программированию на Kotlin поможет вам разобраться в основах разработки приложений под Android. В результате вы самостоятельно создадите несколько полезных программ, после чего сможете исполнять собственные задумки на базе полученных знаний.
Плюсы:
Минусы:
17. «Создаём игру-викторину» от YouTube-канала «Создание игр на Android»
Программа обучения
Большой цикл видео, предназначенный для обучения созданию игр в жанре «викторина». Пользователь будет смотреть за действиями преподавателя и повторять их, что создаёт отличную возможность для получения знаний на практике. Канал преподавателя полностью посвящён созданию игр под Android, что позволяет вам рассчитывать на высокое качество материала.
Плюсы:
Минусы:
18. «Разработка приложений под Android — пишем “Счётчик” с нуля» от AndCoding
Программа обучения
Курс подходит пользователям, прежде не сталкивавшимся с разработкой приложений в Android Studio. После его прохождения вы сможете написать простую программу и разместить её в Google Play.
Главным преимуществом материала является его практическая направленность, что позволит вам сразу запоминать порядок действий преподавателя.
Канал автора курса специализируется на публикации уроков о программировании.
Плюсы:
Минусы:
19. «Android-уроки — Android Studio» от jDroidCoder
Программа обучения
Обширный курс, охватывающий все аспекты разработки приложений в среде Android Studio. Несмотря на большое количество уроков, каждый из них идёт не более 20 минут, благодаря чему вы сможете изучать материал в небольшой промежуток свободного времени. Канал автора курса направлен на обучение разработке под ОС Android.
Плюсы:













