Как делать игры для android. Провал длиною в год, или опыт разработки игры под Android

Я делаю уже 3-ю игру на Android, используя движок AndEngine.

Движок мне нравится и пока полностью устраивает как по функционалу, так и по скорости работы. Поэтому решил показать, как с ним работать и делать игры для Андроида.

  • Исходники (для скачивания можно использовать плагин Mercurial для Eclipse, либо качайте мой архив с движком)
  • Разработка приложений под Android, грабли большие и не очень

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

Начну с общих моментов:

1. Графика.

AndEngine использует для вывода графики библиотеку OpenGL. OpenGL использует для своей работы так называемые Текстуры или Атласы изображений.

Вся графика в играх – растровая. Создавать спрайты можно в чём угодно – от Max 3D и Flash до Фотошопа и Paint.

AndEngine позволяет загружать графику в формате PNG и JPG (ещё есть SVG – векторный формат, но это другая история)

2. Звуки и музыка.

Лучше всего все звуки и музыку для игры конвертировать в формат OGG.

В данный момент AndEngine развивается в версии GLES2 (использует OpenGL ES 2.0). Другая версия (default) неактивна и использует OpenGL ES 1.0.

Я пока работаю с OpenGL ES 1.0 из-за возможности запуска игр на большем количестве реальных девайсов (с версией Android 2.2+) (с версией Android 1.6+).

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

Ладно, приступим.

В Eclipse жмем CTRL+N для создания нового проекта. Выбираем Android Project.


Обзываем проект как-нибудь.

Выбираем Android 2.2 или выше. Позже, в манифесте, можно прописать совместимость с Android 1.6.

Теперь в папку src проекта кидаем исходники AndEngine. И открываем наш единственный файл Activity:

Видим такой код:

Package com.drderico.example; import android.app.Activity; import android.os.Bundle; public class AndEngineExampleActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }

Заменяем весь код на такой:

Package com.drderico.example; import org.anddev.andengine.engine.Engine; import org.anddev.andengine.entity.scene.Scene; import org.anddev.andengine.ui.activity.BaseGameActivity; import android.os.Bundle; public class AndEngineExampleActivity extends BaseGameActivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public Engine onLoadEngine() { // TODO Auto-generated method stub return null; } @Override public void onLoadResources() { // TODO Auto-generated method stub } @Override public Scene onLoadScene() { // TODO Auto-generated method stub return null; } @Override public void onLoadComplete() { // TODO Auto-generated method stub } }

Мы сделали наше Activity потомком класса BaseGameActivity (этот класс принадлежит AndEngine) и унаследовали 4 обязательных метода:

  • Engine onLoadEngine () – метод вызывается при загрузке самого движка AndEngine. Он требует от нас создания движка с некоторыми параметрами;
  • void onLoadResources () – вызывается для загрузки необходимых ресурсов – графики, музыки и т.д. В нём мы должны будем загрузить ресурсы игры в память;
  • Scene onLoadScene () – когда все ресурсы загружены и создан движок, от нас требуется создать главную сцену (Scene), на которой будет рисоваться графика и выводиться на экран девайса;
  • void onLoadComplete () – этот метод вызывается, когда всё успешно загружено и создано. Движок готов к работе.

Я использую такой вариант этого манифеста:

Обратите внимание на свойство android:icon="@drawable/icon" (строка 7) — в первом варианте было android:icon="@drawable/ic_launcher". Можете написать любое имя файла с иконкой приложения. Только не забудьте сам файл назвать также. Иконки лежат в папках res/drawable-hdpi, res/drawable-ldpi и res/drawable-mdpi.

В строке 9 написано свойство android:theme="@style/Theme.NoBackground". Насколько я помню, это немного ускоряет приложение, т.к. отключает отрисовку системой заднего фона, который даже не виден. На форуме пишут, что после такого ускорения ФПС выросло с 45 до 60!!! Сам файл с темой называется theme.xml и лежит в папке res/values. Создайте его там и вставьте следующие строки:

В строке 11 указана ориентация приложения — в данном случае android:screenOrientation="landscape" — горизонтальная. Ещё может быть вертикальная (portrait).

Свойство android:configChanges="keyboardHidden|orientation" в строке 10 запрещает запускать Activity заново при смене орентации экрана. Если его не написать, то Activity будет создаваться каждый раз, как только вы выключите/включите телефон или ваше приложение перекроет другое приложение.

UPDATE: Если хотите прописать совместимость с Андроид 1.6+, то впишите в android:minSdkVersion="4" вместо android:minSdkVersion="8" . Хотя для компиляции игры движок требует Андроид 2.2+, но игра также успешно запустится и на 1.6+.

Привет, Хабрасообщество!

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

Предыстория
Какое-то время назад в течение двух лет я разрабатывал игры под Windows Phone. За это время было выпущено 6 игр, только 2 из них были платные + триал и принесли всего лишь несколько долларов, остальные были бесплатные без рекламы. Разрабатывал игры под эту платформу, потому что там был XNA + C#, мне очень нравилась эта связка, но потом пошли слухи, а затем и реалии о том, что поддержка XNA прекращается. Начался поиск других движков, среди которых больше всех мне приглянулся Unity. Сразу говорю, что не хочу спорить о целесообразности его использования для маленьких игр, меня здесь все устраивает, даже если в других движках есть редактор, C#, кросплатформенность и т.п. На тот момент поддержки Windows Phone в Unity еще не было, но меня это не смутило, т.к. разрабатывать под эту платформу мне больше не хотелось, по крайней мере пока (как сказал один знакомый, зачем ездить на дохлой лошади). Говоря откровенно, мои игры были слабенькие, но выбор был сделан. Подписка разработчика Windows Phone была закрыта, началась новая полоса изучений, прохождения туториалов и, собственно, разработки игр.
Выбор игры, начало
Как известно, нельзя начинать со сложного. По этой причине для пробной игры была выбрана идея, которую я уже начал реализовывать под Windows Phone, а именно – головоломка в стиле Братьев Пилотов (скриншот), но с немного другой механикой. В моей игре при щелчке на объекте состояние переключается не у всего ряда и всего столбца, а только у выбранного объекта и у соседних объектов (вверху, внизу, слева, справа). Для визуального отображения эффекта переключения было решено использовать непосредственно включение или зажигание, а что может гореть? Звезды! Потому название Shining stars было выбрано достаточно быстро. Началась разработка.

Стоит сказать, что бюджета не было ровным счетом никакого. Поэтому все предполагалось делать самостоятельно – программирование, графика, продвижение и т.п.

Разработка
Здесь не было практически никаких проблем. Функционал и механика достаточно простые, потому основу я сделал очень быстро и легко. Пришлось помучиться лишь с разными эффектами в виде вращения, скейлинга, слайдинга и т.п.

Вращение – в Unity есть методы для вращения объектов. Но если честно, работают они для меня порой странно, потому отчасти я просто тыкал наугад и искал вариант, который меня устроит.

Слайдинг был реализован на экране выбора уровня. На экране выводилась лишь часть иконок с уровнями (размер части зависит от размера экрана), остальные отображаются при переключении кнопками «влево» и «вправо».

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

Уровни
В самом-самом первом варианте игры я хотел сделать 20 уровней. Мда, интересная была бы игра. По мудрому совету это число было расширено до ~100 (в планах). Конечно, придумывать уровни самому и проверять, решаемы ли они, мне совсем не хотелось. Я же программист, так зачем издеваться над собой! Через некоторое время был готов генератор, который выдавал все возможные комбинации уровней заданного размера, затем проверял, решаем ли уровень, и выводил его в текстовый файл. Тут-то и была самая большая моя проблема в этой игре. Если при размере игрового поля 4*4 количество уровней измерялось десятками тысяч, то для поля 5*5 уже были миллионы, для поля 6*6… Ну, вы поняли. Да, я программист, я могу написать генератор, могу научить его решать уровни, но я не могу научить его выбирать, какой уровень красивый и войдет в игру, а какой будет отсеян. Потому все эти миллионы уровней нужно было просмотреть, вручную выбрать нужные. Я даже сначала попытался, но потом прикинул масштабы действия (а я хотел сделать игровое поле аж до размера 10*10) и стало мне дурно.

Как ни крути, а пришлось вернуться к ручному рисованию различных узоров. Эти узоры вносились в игру, решались лично мною на моем же телефоне (одновременно проверка решаемости + эстетическое удовольствие от решения уровня). Нерешаемые уровни дорабатывались, неинтересные выбрасывались. И через некоторое время у меня было готово 120 уровней, расположенных в порядке возрастания их размера и сложности в пределах размера.

Пример создания уровня

Так выглядит процесс создания уровня. Сеткой помечено все поле, желтыми клетками места, где есть звезды, белыми - где их нет. В левом верхнем углу код уровня, в виде которых они хранятся и обрабатываются в игре. В правом верхнем углу цифра в светло-зеленом цвете означает, что уровень решен мною за такое-то количество шагов (есть еще красные квадраты у нерешенных уровней), а восклицательный знак означает, что уровень выбран для попадания в игру.

Число 120 было выбрано неслучайно. На разных размерах телефонов на экране выбора уровней можно вместить разное число иконок этих уровней. При цифре 120 я получилось разбить иконки на группы с одинаковым числом иконок в каждой, что немаловажно. Мне не хотелось, чтобы на первых страницах было по 12 иконок, а на последней всего лишь, например, 10.

Графика
Графика в моей игре прошла, на мой взгляд, целую эволюцию! Изначально я хотел сделать игру очень быстро и выпустить «то, что есть» с теми 20 уровнями. И это «то» сначала мне казалось действительно неплохим, но получив пару советов от других людей, я сильно задумался и стал все перерисовывать. За основу были взяты различные знаменитые игры, например, Angry Birds, из которых я взял идею внешнего вида UI, расположения иконок уровней при их выборе.

Старый вариант графики

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



Окно информации об игре


Окно выбора уровня



Чтобы игра не казалась мертвой, появилась идея сделать в ней что-то, что давало бы обратный эффект. Такой идеей стал живой фон игры – если немного приглядеться, звездное небо на фоне – это не просто картинка, на нем мигают другие цветные звезды (синие, желтые и бледно-желтые), а периодически даже пролетает падающая звезда! Да, этот эффект не тянет на оригинальность и новизну, но я считаю, что получилось неплохо и помогло создать нужную атмосферу в игре.

Финальный вариант графики

Главное меню с раскрытыми кнопками настроек (чтобы не загромождать экран, изначально они свернуты и открываются с помощью нажатия на кнопку настроек)


Окно информации об игре


Окно выбора уровня


Окно с уровнем в процессе игры (один из вариантов фона; всего их 3, выбираются случайным образом)



Внимание уделялось абсолютно всему. Игровые объекты улучшались, чтобы быть красивыми. Объекты UI (кнопки, иконки уровней) совершенствовались, чтобы быть и красивыми, и интуитивно понятными только по их картинке. Даже для иконки было разработано несколько вариантов, из которых с трудом был выбран финальный, а впоследствии заменен на еще один, который казался мне более подходящим. А сколько раз я перерисовывал все тексты!

Иконки

Начальные варианты для выбора

Финальный вариант

В компоновке графики мне очень сильно помогла программа TexturePacker , настоятельно ее рекомендую! Ее бесплатных возможностей вполне хватает для наших целей, а атласы она собирает действительно неплохо. Мною было подготовлено несколько атласов – один для кнопок и два набора для игровых объектов (с локализацией на русский и английский языки). Правда, в старой версии Unity мне пришлось вырезать нужные куски с помощью uv-координат, что несколько неудобно. В новой версии Unity все можно сделать гораздо проще с помощью спрайтов.

Звуки и музыка
Здесь нет никаких проблем. Существует множество ресурсов, где звуки можно купить или взять бесплатные. Т.к. бюджета не было, я выбрал несколько подходящих звуков и мелодий, которые эти ресурсы позволяют скачать бесплатно, т.е. все абсолютно законно и без воровства (да, для меня это важно).
Основная идея была – создать спокойную обстановку, в которой игрок может подумать с тихой музыкой на фоне. Но первый же апдейт игры поменял ситуацию – была добавлена более ритмичная музыка с возможностью выбора нужной мелодии (спокойной или быстрой) в настройках.
Релиз, продвижение, результаты
Отмечу, что игру я собирался выпускать только под Android, т.к. у меня есть соответствующий телефон, но нет устройств iOS, на которых я мог бы потестировать игру, а выпускать без реального теста я не хочу. Так же поводом послужило то, что регистрация в Google Play – это разовый платеж 25 долларов, а в Apple нужно каждый год платить 99 долларов. Возможно, я выпущу игру и под iOS, но несколько позже.

Сразу после релиза я написал об игре на ряде форумов об Android и стал следить за результатами, которые появились скоро, но на этом дело практически остановилось. Затем я выпустил два апдейта, о каждом из которых сообщил на форумах (хоть какой-то, но bump). Был так же вариант перекрестных оценок (ставишь чьей-то игре высокую оценку и просишь высоко оценить свою игру). Но это означает установку целой кучи чужих (не всегда хоть сколько-то хороших) игр себе на телефон, возможный обман со стороны других (ведь не факт, что они оценят твою игру в ответ), потому от подобного варианта я быстро отказался.

На данный момент количество загрузок очень мало. Я догадывался, что будет некий провал, но настолько… Отчасти это связано с тем, что я выкладывал на форумах не только ссылку на Google Play, но и сам apk файл, причем судя по статистике, его загрузки превышают загрузки игры из маркета.

Игра бесплатная. В качестве монетизации был выбран показ рекламы. В процессе разработки я хотел подключить несколько модулей – если не получилось отобразить один, показывать второй и т.д. Первым был подключен известный Chartboost, далее пытался подключить RevMob и PlayHaven, но с ними вышли некоторые заминки (откровенно, они не заработали в игре, причину я так и не выяснил), потому остался только один модуль, от которого и должен был идти весь доход. Но если учесть вышесказанное (количество загрузок и желание пользователей кликать рекламу или ставить рекламируемые игры), вы понимаете, что дохода-то и нет.

Выводы
Как говорят, плохой результат – тоже результат. С момента начала разработки на Unity (время на Windows Phone не считаю) до релиза прошло около 14-15 месяцев. По-хорошему, такая игра пишется за месяц неполной занятости, и то это с запасом. Причина была в нехватке времени. Нет, времени было достаточно – пара часов по вечерам, несколько часов на выходных вполне хватало, чтобы продолжать делать игру без длительных пауз. А не хватало мне морального самочувствия. В этот период было очень много личных проблем, при этом было желание делать игру, были идеи, но я садился за компьютер, тупо смотрел в монитор, затем понимал, что у меня нет вдохновения, что я не могу реализовать абсолютно ничего, и выключал его. Так и пролетел этот год.

Начнем с отрицательных моментов. Времени я потратил на игру действительно много, но здесь обстоятельства, от меня не зависящие. Игра откровенно провалилась, дохода она мне не принесла (ну, несколько долларов не считаются). И с этой точки зрения, это полный провал.

Но положительных моментов, наверное, больше. В первую очередь, это опыт! На этой игре я изучил основные возможности Unity с одной оговоркой – игра разрабатывалась на старой версии, где еще не было 2d. Сейчас 2d игры можно разрабатывать с этой новой технологией, потому большинство моих наработок из игры уже могут не понадобиться.

На этой игре я понял, что графика действительно важна! Не надо об этом забывать, никогда! Если бы я выпустил игру с первыми вариантами дизайна, мне было бы стыдно за него. Сейчас я выпустил красивую игру. Да, она провалилась, но я все равно горжусь ей! Если есть бюджет, можно нанять хорошего дизайнера. Если нет, то перерисовывать все снова и снова до тех пор, пока результат не будет действительно стоящим.

Думаю, что единственной крупной ошибкой, которую я здесь допустил, это выбор жанра игры. Наверное, большинство игроков любят экшены, аркады, может что-то еще, но не очень любят головоломки такого типа. Люди видят мою игру, кому-то может не понравиться графика, а кто-то отсекает ее из-за жанра. И если говорить о следующей игре, которую я бы разрабатывал, я бы поменял только жанр, все остальное сделал бы так же!

Метки: Добавить метки

Разработка мобильных приложений – это один из самых доходных сегментов в компьютерной индустрии. Создание приложения обходится в несколько сотен или тысяч долларов, но прибыль может достигать миллионов. В связи с этим, многие интересуются, как создать игру на телефон или планшет Андроид. Это вам вполне по силам (при должных знаниях и стремлении). Вам достаточно разработать концепцию, изучить язык программирования, поставить среду разработки, а потом приступить к созданию.

Разработка идеи

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

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

Полезным шагом будет изучение потенциальных конкурентов. Просмотрите магазин приложений Google Play, при этом найдите похожие игры. Постарайтесь понять, почему эта игра пользуется такой популярностью, а что в ней можно улучшить. На основе этих наблюдений, вы можете создать собственный проект. Но ни в коем случае не копируйте элементы интерфейса или что-либо другое. Оригинальность и уникальность играют важную роль, при этом влияют на первое впечатление пользователя.

Создание объектной модели и спецификации

Перед тем как приступить к программированию, следует решить определенный список задач. В него входят:

  • Объектная модель.
  • Функциональные спецификации.
  • Интерфейс и контент.

Объектная модель представляет собой подробное описание каждого объекта в игре. Это может быть непосредственно сам игрок, какие-либо предметы (оружие, броня и так далее), уникальные свойства, объекты окружающего мира.

К функциональным спецификациям относится все то, что описывает, как будет работать игра. Это возможные действия игрока и неиграбельных персонажей (NPC), какой урон наносит оружие или как израсходуется броня. Разработчику необходимо проработать функции каждого объекта в игре, это касается и всевозможных расходных материалов (аптечек, патронов).

Интерфейс – крайне важная составляющая, так как именно с ним будет происходить контакт пользователя. Необходимо разработать, какие окна будут в игре (окно загрузки, меню, настроек, непосредственно игры), а также предусмотреть схемы перехода от одного окна непосредственно к другому.

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


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

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

Если вы выбрали первый, перед созданием игры для Андроид вам необходимо установить драйверы для смартфона на ваш компьютер, после чего поставить среду разработки. Для создания программ под операционную систему Андроид используется Android Studio. Это среда разработки сделана компанией Google, при этом предоставляет широкие возможности по созданию приложений и игр на любой вкус.


Программирование происходит на языке Java. Это один из самых популярных языков. Без начального уровня вы не сможете работать в Андроид Студии. Он строго типизирован, при этом в освоении намного легче C или C++. Следует найти насколько книг по Java, а затем постепенно изучать все особенности этого языка программирования. Параллельно обязательно выполняйте различные практические задания, чтобы закрепить теорию. Это трудный путь, но он предлагает максимальные возможности в реализации своего проекта. С Андроид-студией также можно создать онлайн-игры.


Если вы не сильны в программировании, попробуйте воспользоваться конструктором приложений. Разработка игр при помощи конструктора сводится к созданию уровней, персонажей и других элементов при помощи специального редактора. Многие конструкторы основаны на принципе WYSIWYG – «что видишь, то и получаешь». Пользователь может разработать уровни, персонажей и другие элементы, выставляя их в специальном редакторе и изменяя настройки/свойства. Это намного проще, чем с нуля программировать игру.

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

Первые строчки по популярности занимает Construct 2. Имеется бесплатная начальная версия, в которой имеется широкий функционал для создания игры любого жанра. Программа позволяет разработать игру не только под операционную систему Android, но и для iOS, и даже для браузера (используется HTML5). Программу без труда освоят даже новички. Если функционала вам недостаточно, можете приобрести полную версию за 129 долларов.


Одним из крайне популярных является конструктор Clickteam Fusion. Он отличается простым интерфейсом, возможностью бесплатно создавать браузерные приложения, различные онлайн-игры, поддерживает аппаратное ускорение, работает с различными платформами (в том числе с Андроид).

Программа имеет визуально устаревший интерфейс, который насчитывает всего 8 окон. Но за счет этого повышается удобство использования. В данной программе можно создать практически любую 2d игру: головоломки, карточные игры, квесты и другое. Купить полную версию вы можете всего за 100 долларов.


Простым в освоении является конструктор Game Maker. С его помощью можно создать проект под iOS, Android, Mac, XBox и даже PS3. Изначально программа разрабатывалась как обучающее приложение для детей, поэтому с освоением у вас не должно возникнуть проблем. В качестве туториала имеется процесс создания игры Pacman.

Еще одним неоспоримым преимуществом Game Maker является возможность модификации стандартных функций. Вы можете «копаться» в коде, а также самостоятельно прописывать каждое из действий. GML (GameMaker Language) обладает множеством мощных методов, а также понятным синтаксисом. К сожалению, конструктор имеет пару недостатков, в частности, сложность отладки, а также нестабильное поведение приложения на различных платформах.

Как создать игру на андроид?











Создание игры для любой операционной системы предполагает знание программирования. Даже для простейших игр типа Flappy Bird нужно знать его основы. Давайте рассмотрим, каким образом происходит создание игры на примере операционной системы Андроид.

Движок

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

Этот движок обладает довольно большими возможностями и имеет инструкции по использованию на русском языке. Движок является мультиплатформенным, а потому игра, которая будет написана на нем, сможет быть установлена и на других платформах.

Среда программирования

Также весьма важным моментом является использование среды программирования. Под этим термином подразумевается инструмент, в котором будет происходить написание игры. В случае с движком LibGDX средой программирования будет Exlipce. Так как движок игры был написан на языке программирования java, то для того чтобы использовать среду программирования, вам придется использовать базовые навыки и знания программирования именно в этом языке. Поэтому если вы не знаете азов, вам нужно будет их изучить.

Создание проекта

Чтобы написать игру на андроид, как и на любую другую платформу, нужно сначала создать проект. Сделать это несложно. В случае с LibGDX для этого достаточно распаковать движок в папку и найти в нем одноименный файл. Далее понадобится нажать кнопку "Создание проекта", и вы уже окажетесь в шаге от создания проекта. Затем потребуется лишь выбрать платформу для игры и указать название проекта. В конфигурации нужно указать, где будет размещена игра в среде программирования. Движок сам создаст проект и подскажет, если вы что-то сделали не так. Далее можно будет перейти в среду программирования и начать писать игру.

Как видите, создание игры для андроид и любой другой ОС просто невозможно без знаний основ языков программирования. Однако сейчас движки становятся все лучше и удобнее даже для тех, кто только начинает свой путь в этом деле. Примером такого движка также является Game Maker. Об этом движке и о создании игры на нем вы сможете прочитать в статье .