на чем пишут игры для смартфонов

Опыт создания игры для 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).

Подводя итоги, скажу, что игра до сих пор в небольшом минусе. Но ожиданий от первой игры особых и не было, а опыт получил ценный и интересный.

Если мой рассказ получился сумбурным, задавайте вопросы, уточню, что смогу.

Источник

Как выбрать язык программирования для создания Андроид — приложения

Привет, Хабр! представляю вашему вниманию перевод статьи «Top Programming Languages for Android App Development» автора Mohit Maheshwari.

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

на чем пишут игры для смартфонов. Смотреть фото на чем пишут игры для смартфонов. Смотреть картинку на чем пишут игры для смартфонов. Картинка про на чем пишут игры для смартфонов. Фото на чем пишут игры для смартфонов

Выбор языка программирования

В настоящее время Java является самым популярным языком программирования для мобильной разработки на Android. Хотя Google активно продвигает Kotlin как язык, который должен будет заменить Java. Также приложения под Android пишут и на других языках.

Изучение разных видов языков поможет Вам сформировать четкое представление о том, какой язык программирования необходимо выбрать для создания определенных видов приложений.

Ниже кратко описаны языки программирования, которые используются для разработки Android:

Java является официальным языком для разработки Android и поддерживается Android Studio.

Kotlin является официальным и самым последним введенным языком Android; он похож на Java, но во многих отношениях немного легче.
Также Android Studio поддерживает C++ с использованием Java NDK, что может быть удобно для игр.

C# несколько удобнее для начинающих в отличие от C или C++. Он поддерживается некоторыми очень удобными инструментами, например Unity и Xamarin, которые отлично подходят для разработки игр и кросс-платформенных приложений.

BASIC невероятно приятен в использовании и является идеальным началом для обучения кодированию.

Corona — еще один кроссплатформенный инструмент, использующий язык Lua (скриптовый язык программирования, по идеологии и реализации ближе всего к JavaScript) для реализации логики приложений, он значительно упрощает процесс сборки приложений и позволяет вызывать собственные библиотеки.

PhoneGap (HTML, CSS, JavaScript) — если Вы знаете, как создавать интерактивные веб-страницы, то можете использовать эти знания с PhoneGap для создания простого кросс-платформенного приложения.

Ознакомимся подробнее с инструментами и языками

Android Studio

Лучший способ разработать приложение для Android — это пойти и установить Android Studio. Android Studio — это интегрированная среда разработки (IDE) для работы с платформой Android.

на чем пишут игры для смартфонов. Смотреть фото на чем пишут игры для смартфонов. Смотреть картинку на чем пишут игры для смартфонов. Картинка про на чем пишут игры для смартфонов. Фото на чем пишут игры для смартфонов

Android Studio, основанная на программном обеспечении IntelliJ IDEA от компании JetBrains, — официальное средство разработки Android приложений. 17 мая 2017, на ежегодной конференции Google I/O, Google анонсировал поддержку языка Kotlin, используемого в Android Studio, как официального языка программирования для платформы Android в добавление к Java и С++.

Android Studio это часть программного обеспечения, называемая IDE, или интегрированной средой разработки. Он предлагается в виде пакета с Android SDK, который представляет собой не что иное, как набор инструментов, используемых для облегчения разработки Android. Здесь сосредоточено все, что требуется, чтобы начать создавать приложения под Android. Такие функции, как визуальный конструктор, делают процесс более плавным, в то время как расширенные, мощные функции добавляются все время, чтобы предоставить разработчикам доступ к таким вещам, как облачное хранилище.

Для любого разработчика мобильных приложений на Android, первым и наиболее предпочтительным языком программирования пока остается Java, так он поддерживается компанией Google и большинство приложений в Google Play построены именно на нем.

на чем пишут игры для смартфонов. Смотреть фото на чем пишут игры для смартфонов. Смотреть картинку на чем пишут игры для смартфонов. Картинка про на чем пишут игры для смартфонов. Фото на чем пишут игры для смартфонов

Сама Java была разработана компанией Sun Microsystems (в последующем приобретённой компанией Oracle) еще в 1995 году, и она до сих пор используется для широкого спектра программных приложений. Код Java выполняется виртуальной машиной, которая работает на устройствах Android и интерпретирует код.

Для новичков Java может показаться немного сложным. Это становится препятствием, с которым сталкиваются люди, которые планируют попасть в разработку приложений для Android.

Но, если Вы новичок, и с нетерпением хотите сделать игру, или просто начать учиться ради обучения, то лучше начать с чего-то проще, но вернуться к Java, как только вы получили немного больше опыта.

Kotlin

Kotlin недавно появился в качестве «другого» официального языка для разработки Android. Как и Java, Kotlin работает на виртуальной машине Java. Он полностью совместим с Java и не вызывает никаких препятствий или увеличения размера файлов.

на чем пишут игры для смартфонов. Смотреть фото на чем пишут игры для смартфонов. Смотреть картинку на чем пишут игры для смартфонов. Картинка про на чем пишут игры для смартфонов. Фото на чем пишут игры для смартфонов

Основное отличие заключается в том, что Kotlin требует меньше «шаблонного» кода, т.е. более простая для чтения система. Он также устраняет такие ошибки, как исключение нулевого указателя, и даже освобождает Вас от необходимости заканчивать каждую строку точкой с запятой. Это отличный язык программирования, если вы только учитесь разрабатывать приложения для Android.

Kotlin является более легкой отправной точкой для начинающих, и тот факт, что можно использовать Android Studio, является большим плюсом.

Что действительно не стоит выбирать новичку для разработки приложения для Android так это C / C++. Android Studio поддерживает C / C++ с помощью Android Native Development Kit. Это значит, что написанный код будет работать не на виртуальной машине Java, а на самом устройстве и даст больше контроля над такими вещами, как память. Например для 3D-игр, это позволит выжать дополнительную производительность с устройства.

C# — это более простая, чисто объектно-ориентированная версия разработки C и C+ от Microsoft. Основная цель Microsoft заключалась в том, чтобы объединить мощь C++ и простоту Visual Basic. Этот язык для разработки Android-приложений часто приходится по вкусу многим разработчикам, особенно сочетание C# и Unity.

Unity

Unity — межплатформенная среда разработки компьютерных игр. Unity позволяет создавать приложения, работающие под более чем 20 различными операционными системами, включающими персональные компьютеры, игровые консоли, мобильные устройства, интернет-приложения и другие. Выпуск Unity состоялся в 2005 году и с того времени идёт постоянное развитие.

на чем пишут игры для смартфонов. Смотреть фото на чем пишут игры для смартфонов. Смотреть картинку на чем пишут игры для смартфонов. Картинка про на чем пишут игры для смартфонов. Фото на чем пишут игры для смартфонов

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

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

Кроме того, разработка таким образом обеспечивает очень практичный способ изучения объектно-ориентированного кодирования, потому что объекты в этом случае фактически являются объектами большую часть времени.

C# также можно использовать с Xamarin через Visual Studio. Это похоже на традиционную разработку Android с преимуществом кросс-платформенности, которая имеет кодовую базу для Android и iOS.

BASIC

То, что мы узнали о C#, было попыткой соединить силу C с легкостью Visual BASIC. Это потому, что BASIC (Beginners All-Purpose Symbolic Instruction Code) невероятно приятен в использовании и является абсолютно идеальной отправной точкой для обучения кодированию.
К сожалению, он официально не поддерживается Android Studio, и его нельзя использовать в Unity. Но есть менее известный вариант для разработки приложений для Android в BASIC под названием B4A (BASIC 4 Android), который позволяет создавать приложения для Android с помощью BASIC.

на чем пишут игры для смартфонов. Смотреть фото на чем пишут игры для смартфонов. Смотреть картинку на чем пишут игры для смартфонов. Картинка про на чем пишут игры для смартфонов. Фото на чем пишут игры для смартфонов

Corona

Corona предлагает еще один простой вариант для разработки приложений для Android. Вы будете кодировать в LUA, который уже намного проще, чем Java. Он поддерживает все собственные библиотеки, что позволяет публиковать данные на нескольких платформах.

Corona подходит для тех, кто хочет создать что-то относительно простое и не так озабочен развитием своих навыков кодирования или становлением профессионалом. Если вы хотите использовать такие функции, как покупка в приложении, то вам нужно будет заплатить. То же самое касается использования собственных API для Android.

PhoneGap

Наконец, последний простой вариант, который вы можете выбрать для разработки Android-приложений, — это PhoneGap.

на чем пишут игры для смартфонов. Смотреть фото на чем пишут игры для смартфонов. Смотреть картинку на чем пишут игры для смартфонов. Картинка про на чем пишут игры для смартфонов. Фото на чем пишут игры для смартфонов

PhoneGap работает на Apache Cordova и позволяет создавать приложения, использующие код, который вы обычно используете для создания веб-сайта: HTML, CSS и JavaScript.

Пришло время, чтобы сделать собственный выбор!

Источник

📱 Как начать разрабатывать мобильные игры для 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 мобильные игры эволюционировали до многопользовательских платформ со сложной механикой и интересной визуальной составляющей. Это не должно вас пугать: даже простые проекты в стиле платформеров и казуальных игр могут найти свою аудиторию благодаря доступности и простому управлению.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *