Как создать игру для телефона android стратегии. Какую платформу выбрать для создания мобильной игры

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

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

Способ 1: Онлайн-сервисы

На просторах интернета находится множество вспомогательных сервисов, где присутствуют заранее созданные шаблоны игр по жанрам. Пользователю же нужно только добавить изображения, настроить персонажей, мир и дополнительные опции. Осуществляется такой метод без каких-либо знаний в области разработки и программирования. Давайте разберем процесс на примере сайта AppsGeyser:

  1. Перейдите на главную страницу сервиса по ссылке выше или через поиск в любом удобном браузере.
  2. Нажмите на кнопку «Создать» .
  3. Выберите жанр проекта, который хотите сделать. Мы рассмотрим обычный раннер.
  4. Ознакомьтесь с описанием жанра приложения и переходите к следующему шагу.
  5. Добавьте изображения для анимации. Вы можете нарисовать их самостоятельно в графическом редакторе или загрузить из интернета.
  6. Выберите врагов, если это необходимо. Вам нужно только указать их количество, параметр здоровья и загрузить картинку.
  7. Каждая игра имеет главную тему, которая отображается, например, при входе или в главном меню. Кроме этого присутствуют различные текстуры. Добавьте эти изображения в категории «Background and game images» .
  8. Кроме самого процесса каждое приложение отличается использованием подходящей под жанр музыки и оформления. Добавьте шрифты и файлы аудио. На странице AppsGeyser вам предоставят ссылки, где можно загрузить бесплатную музыку и шрифты, не защищенные авторским правом.
  9. Назовите свою игру и переходите далее.
  10. Добавьте описание, чтобы заинтересовать пользователей. Хорошее описание способствует увеличению количества загрузок приложения.
  11. Последним шагом является установка иконки. Она будет отображаться на рабочем столе после инсталляции игры.
  12. Сохранить и загрузить проект можно только после регистрации или входа в AppsGeyser. Выполните это и следуйте далее.
  13. Сохраните приложение, нажав на соответствующую кнопку.
  14. Теперь вы можете опубликовать проект в за небольшую плату в двадцать пять долларов.

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

Способ 2: Программы для создания игр

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

Мы же рассмотрим принцип создания проекта в :


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

Способ 3: Среда разработки

Теперь давайте рассмотрим последний, самый сложный метод – использование языка программирования и среды разработки. Если предыдущие два способа позволяли обойтись без знаний в области кодинга, то здесь вам обязательно потребуется владеть , C# или, например, Python. Присутствует еще целый список языков программирования, которые нормально работают с операционной системой Android, однако официальным и наиболее популярным считается Java. Чтобы написать игру с нуля вам сначала нужно выучить синтаксис и ознакомиться с основными принципами создания кода на выбранном языке. В этом помогут специальные сервисы, например, GeekBrains.

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

Кроме всего, если ваш выбор на Java, а вы никогда раньше не работали с языками программирования, рекомендуем ознакомиться с JavaRush. Уроки там проходят в более развлекательном стиле и больше подходят для детей, однако при нулевом багаже знаний сайт будет полезен и взрослым.

Само программирование происходит в среде разработки. Наиболее популярной Integrated Development Environment для рассматриваемой операционной системы считается Android Studio. Ее можно загрузить с официального сайта и сразу же приступить к использованию.

Существует еще несколько распространенных сред разработки, которые поддерживают разные языки. Знакомьтесь с ними по ссылке ниже.

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

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

Ни одна успешная игра не обходится без красивой графики, поэтому создание дизайна – один из важнейших этапов разработки. Дизайн на ОС Android реализовывается с помощью «дизайн-документа» или диздока. Начать создание игрушки нужно именно с его детальной проработки. В файле содержится:

  1. Объектные модели;
  2. Функциональные спецификации;
  3. Игровой контент;
  4. Интерфейс.

Рассмотрим каждый из пунктов более подробно.

Объектные модели

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

Функциональные спецификации

Здесь описывается геймплей, основные возможности каждого персонажа. Также здесь дается описание особенностей игровых предметов – оружия, аптечек, брони и других. По сути, функциональные спецификации – это правила, по которым происходит игровой процесс. Чем лучше будет проработан данный раздел, тем легче будет создать качественную Андроид-игру.

Игровой контент

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

Интерфейс

Интерфейс – это то, как пользователь будет взаимодействовать с игрой. Он включает в себя кнопки, с помощью которых можно управлять персонажем, и разделы меню: например, играть, счет, настройки, топ игроков, справка. Если вы не имеете опыта в создании приложений на Андроид, перед созданием собственного скачайте с Плей Маркета и проанализируйте популярные игры и перенесите лучшие решения в свой проект.

Игровой движок

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

Каждый из них предлагает различные функции: некоторые разработаны для 3D, другие для 2D, может поддерживаться мультиплатформенность. Таких движков есть огромное количество, но, если вы новичок, лучше выбрать один из самых популярных, так как там будут присутствовать все необходимые функции.

UDK

Torque 2d/3d

Что такое конструктор игр?

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

Конструктор позволяет создавать игры различных жанров для Windows, Android и iOS. Предлагает большой выбор готовых локаций, объектов, персонажей и звуковых оформлений, поэтому создание первой Андроид-игры не займет много времени. Пользователи, знакомые с языками программирования JS и C++, могут использовать встроенный GML. Единственный недостаток заключается в том, что программа не переведена на русский язык.

Заключение

Создание игры на Андроид – не совсем простое, но очень прибыльное дело. Если вы решили разработать игру и зарабатывать на ней, сначала проработайте идею. Далее напишите «дизайн-документ» и определитесь с игровым движком, который сможет максимально раскрыть ее потенциал. После этого можно приступать непосредственно к созданию приложения в конструкторе.

Видео

Чтобы детальнее ознакомиться с процессом создания Андроид-игр, ознакомьтесь с серией видеороликов, посвященных этому занятию.

Мобильная игровая индустрия приносит доходы, сопоставимые с прибылью от продажи видеоигр на ПК и консоли. Гейминг на телефонах признан кампаниями, выпускающими ААА проекты (высокобюджетные игры). Именно поэтому на мобильной платформе появляются порты консольных и компьютерных видеоигр. Кроме того, маленькие независимые студии регулярно пытаются получить популярность среди обладателей смартфонов и планшетов. Зарабатывать на создании приложений намного легче, поскольку трудозатраты и расходы на создание проекта меньше, чем на ПК. При этом при успехе разработчик получает солидную прибыль, сопоставимую с игроделами.

Методы создания

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

Для рядовых или начинающих разработчиков существует три типа инструментов для создания игры на Андроиде:

  1. Онлайн сервисы позволяют заниматься разработкой прямо в браузере. Предлагают пользователям готовые и рабочие шаблоны для работы с разнообразными игровыми жанрами. Требуют минимального количества навыков в программировании.
  2. Программы обладают более подробным функционалам. Аналогично с онлайн сервисами предлагают набор готовых шаблонов и скриптов. Требуют определенных знаний в программировании, поскольку понадобится писать код для каждого действия.
  3. Среда разработки сложный инструмент, требующий навыков в программировании. Здесь необходимо знать конкурентный язык программирования, на котором будет писаться игра. Без специальных курсов и знаний написать игры, например, на языке Java невозможно. Для самоучек придуманы специализированные форумы. Наиболее популярный – GeekBrains .

Идея и сценарий

  • Сюжет : парень, рисовавший на поезде был замечен полицейским и теперь пытается убежать от него.
  • Цель : убежать от полицейского.

Чтобы сделать игру на Андроид необходимо, чтобы игровой процесс отвечал на вопросы:

  1. Стороны конфликта : пример Angry Birds – птицы и свиньи.
  2. Как решается этот конфликт – птицы летят в свиней на рогатке.
  3. Где разворачиваются основные события ?

Пример сценария для ранера на Android: главный герой – белка, которая готовится к зимней спячке. Ее задача , насобирать, как можно больше припасов на зиму. В качестве преград выступают деревья и другие лесные жители. Разумеется, чем сложнее игра, тем больше вопросов задается для ее создания. Но вопросы «зачем», «почему» и «как» применяются для любого проекта.

Объектная модель и спецификации

Увлекательный геймплей и яркая графика – это не единственные факторы успешного приложения. Немаловажными являются такие пункты, как объектная модель и спецификации. Представленные параметры выполняют две важнейшие функции:

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

Пример объектной модели игровой сущности:

  • Основной раздел – предметы:
    • Специальная классификация – оружие:
      • Вид № 1 – меч ;
      • Вид № 2 – лук .

Контент и интерфейс

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

  1. Использовать интуитивно понятные значки (меню настроек – шестеренки).
  2. Применять минималистские объекты , которые не будут отвлекать от игры.
  3. Структурировать информацию.

Контент – это аспект, который наполняет видеоигру. Под контентом понимают предметы, которые игрок может получить во время игрового процесса за игровую или реальную валюту. Различают три типа контента:

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

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

Выбор движка

Игровой движок – это набор инструментов, упрощающих разработку игр. Главное преимущество движка – автоматизация наиболее используемых функций игры. Разумеется, написать игровой движок можно самостоятельно, но этот процесс крайне трудоемкий и затратный по времени. Каждый игровой движок подходит для реализации тех или иных целей.

Каждый движок способен выполнять те или иные задачи и применяется для различных жанров. Рассмотрим на примерах различных движков:


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

Процесс создания игры

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

В качестве конструктора используем Game Maker – это один из лучших инструментов для новичков. В первом примере рассмотрим разработку простой аркады:

  1. Создаем основной фон – локацию, где будут протекать основные события.
  2. Делаем главного персонажа : рисуем самостоятельно или загружаем готовый шаблон.
  3. Проектируем предметы для взаимодействия: монетки, ловушки, враги и т.п.
  4. Программируем событие , которое случится при взаимодействии с предметом: наступил на ловушку – игра окончена, подобрал монетку – путь продолжается.

Для того чтобы показать различие между игровыми жанрами рассмотрим более сложный пример. Теперь используем конструктор Unity 3D, а игровой жанр меняем на ККИ:

  1. Первый пункт остается неизменным – создание фона для будущего проекта.
  2. Место главного персонажа занимают карты , их намного больше, поэтому работа более время затратная.
  3. Проектируем логические взаимодействия между картами (самый сложный этап).
  4. Определяем количество игроков .
  5. Конвертируем игровое меню из трехмерного измерения в двухмерное пространство.
  6. Определяем условия , при которых матч будет считаться завершенным.

Лучшие конструкторы

Construct 2 и 3

– инструмент, позволяющий делать видеоигры на телефоны без знаний программирования. С его помощью можно создать видеоигру не написав не единой строчки кода. Если думаете, что работать с таким инструментом проигрышный вариант, то посмотрите на приложение Floppy Bird , которое написано на Construct 2.

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

Construct 3 – улучшенный движок, который планомерно вытесняет Construct 2. Расширение привычных опций и предоставление новых функции – преимущества обновленной версии. Однако в этой ревизии отсутствует бесплатная подписка . Зато имеется обратная совместимость с предыдущей версией утилиты.

– распространяется в трех вариантах: «бесплатная версия», «обычная вариация», и «профессиональная ревизия». Разумеется, что чем разнообразнее функционал версии, тем выше ее цена.

Clickteam Fusion – это мультиплатформенный движок, позволяющий создавать игры для различных платформ, а также заниматься их портированием. Основная специализация – 2D. Однако существует возможность писать и в 3D. Именно на этом движке был написан Five nights at Freddy’s (Пять ночей с Фредди).

Движок – это еще один представитель конструкторов, предъявляющие минимальные требования к знаниям программирования. Презентованный движок – мультиплатформенный инструмент, позволяющий писать игры, как на мобильные, так и на старшие платформы. Обладает интерфейсом Drag & Drop.

Интерфейс приложения – его главная фишка, поскольку меню управления имитирует панель Photoshop , что оказывается довольно удобным для геймдизайнинга. На этом движке пишутся приложения таких студий как: ArmorGames, Kongregate, Newground и прочих более мелких кампаний.

GameMaker – движок, специализирующийся на создании двухмерных проектов, которые являются популярными на мобильных платформах. Движок ориентирован на начинающих разработчиков , обладающих базовым набором знаний. Посредством GameMaker разрабатывался Hotline Miami и прочие 2D шедевры. Из очевидных плюсов движка выделяют:


Unity – наиболее популярный движок среди разработчиков. Представленный движок – самая гибкая система в сегодняшнем списке. Здесь удобно работать с 2D и 3D проектами. На этой платформе разрабатывались видеоигры для различных систем:

  • PS 3 – Cuphead, Escape from Tarkov, Life Is Strange: Before the Storm.
  • Android и IOs – Angry Birds 2, Hitman Go, Heartstone.
  • PC – Pillars of Eternity, Ori and the Blind Forest.

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

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

Конструктор Цена Преимущества
Construct 2 и 3 Бесплатная/199 $ Мультиплатформа, оперативность обработки данных, простой внутренний язык.
Clickteam Fusio 148 $ Создание прототипов, минимальные требования к программированию, создание полноценного коммерческого продукта.
Бесплатно/99 $/199 $ Интерфейс Drag & Drop, ориентированность на 2D игры, имитация панели управления Photoshop.
Game Make Бесплатно Мультиплатформа, регулярные обновления, активное пользовательское сообщество, простая панель управления.
Бесплатная Мультиплатформа, вариативность игровых настроек, готовые шаблоны для создания игр, популярность среди разработчиков, открытая система

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

  • наличие мультиплеера ;
  • собственные познания в программировании ;
  • сложность проекта: двухмерная или трехмерная игры;
  • степень совместимости с другими игровыми платформами;
  • финансовые возможности (стоимость платных инструментов).

Онлайн сервис AppsGeyser

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

Разберем создание игры в качестве примера:


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

Лучшие приложения

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

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


Геймплей, созданный при помощи , представляет аркаду, где герою необходимо найти выход из комнаты. При этом все нарисованные объекты будут динамичными и доступными для взаимодействия.

Apper

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

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


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

Пример создания игры

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

Геймплей

Геймплей построен на том, чтобы преодолеть на машине максимально возможную дистанцию. Функцию «преград» выполняют динамические препятствия , появляющиеся на дороге. Если врезаться в одну из преград, то игра закончится. Для усложнения геймплея вводим запас топлива, который расходуется при заезде. Чтобы пополнить бензобак требуется собирать баки с бензином.

Начало разработки

«Гоночный тетрис» состоит из двух простых сцен: главное меню и окно геймплея . Первым делом займемся меню. Для него необходимо использовать элемент управления GUI – стандартный инструмент платформы.

Для фона используем спрайт под названием «background ». В примере применяется серый цвет. При желании цветовая палитра изменяется.

Второй шаг – создание скрипта «menu.cs ». Путь команды: Правой кнопкой мыши на строке скрипта – «Create» – «C# Script ». Не забудьте повесить его на «background». Содержимое скрипта выглядит следующим образом:

Using UnityEngine; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization.Formatters.Binary; using System.IO; public class menu: MonoBehaviour { public GUIStyle mystyle; //объявляется для того чтобы изменять начертание GUI компонентов(шрифт, размер и.т.п.) string score; //переменная для хранения пройденной дистанции void Start () { StreamReader scoredata = new StreamReader (Application.persistentDataPath + "/score.gd"); //создание файловой переменной score = scoredata.ReadLine (); //чтение строки scoredata.Close (); //закрытие файловой переменной } void Update () { } void OnGUI(){ GUI.Box (new Rect (Screen.width*0.15f, Screen.height*0.8f, Screen.width*0.7f, Screen.height*0.1f), "MAX DISTANCE:"+score,mystyle); //создаем небольшое окошко для показа пройденного расстояния if (GUI.Button (new Rect (Screen.width*0.15f, Screen.height*0.25f, Screen.width*0.7f, Screen.height*0.1f), "Start game",mystyle)) //создаем кнопку для запуска игровой сцены { Application.LoadLevel(1);//Загрузка игровой сцены } if (GUI.Button (new Rect (Screen.width*0.15f, Screen.height*0.4f, Screen.width*0.7f, Screen.height*0.1f), "Exit",mystyle)) //создаем кнопку для выхода из игры { Application.Quit();//Выход из игры } } }

В конечном итоге на экране должно получить примерное такое окно:

Не забывайте, что в программе имеется функция редактирования текстовых элементов при помощи MyStyle.

Игровое окно

Перед началом работы необходимо определить ключевые элементы, которые расположены на этом рисунке.

В их число входят:

  • автомобиль;
  • бензобак;
  • дорога.

Рассмотрим создание каждого элемента в отдельности.

Дорога

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

Приступим:

  1. Загружаем на сцену с гейплеем, подгоняя ее по размерам камеры.
  2. Далее добавляем в качестве дочерних объекта внутри дороги четыре блока с преградами и иконку бензобака.
  3. Не забудьте прибавить к ним Box Collider 2D. Дополнительно требуется отметить иконку Is Triger , чтобы объекты пересекались с машиной.
  4. Создайте скрипт под названием «moveroad.cs » и повесьте его на трассу. Далее прописываем код: using UnityEngine; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization.Formatters.Binary; using System.IO; public class moveroad: MonoBehaviour { public GUIStyle mystyle;//создание стиля int f,fuelst; float score=0,speed=-0.2f,data,fuelpos;// переменные для хранения расстояния, скорости и рекорда public GameObject block;// игровой объект для размещения блока public GameObject block1; public GameObject block2; public GameObject block3; public GameObject fuel; bool turbotriger=false; void Start () { StreamReader scoredata = new StreamReader (Application.persistentDataPath + "/score.gd"); data = float.Parse(scoredata.ReadLine ());//чтение с файла информации о рекорде scoredata.Close (); } void Update () { transform.Translate (new Vector3 (0f,speed,0f));//движение дороги с заданной выше скоростью score = score + (speed*-10);// подсчет расстояния if (transform.position.y < -19f) // если дорога уходит за пределы камеры то она "теле портируется" вверх { transform.position=new Vector3(0f,33.4f,0f);//новая позиция дороги block.transform.position=new Vector3(10.15f,block.transform.position.y,block.transform.position.z); block1.transform.position=new Vector3(8.42f,block1.transform.position.y,block1.transform.position.z); block2.transform.position=new Vector3(6.62f,block2.transform.position.y,block2.transform.position.z); block3.transform.position=new Vector3(4.95f,block3.transform.position.y,block3.transform.position.z); fuel.transform.position=new Vector3(11.86f,fuel.transform.position.y,fuel.transform.position.z); //скрытие за пределы камеры всех препятствий(блоков) f = Random.Range (0, 5);//случайное появление на дороге 1-го из 4-х блоков или канистры с бензином switch (f) { case 0:block.transform.position=new Vector3(2.40f,block.transform.position.y,block.transform.position.z); break; case 1:block1.transform.position=new Vector3(0.90f,block1.transform.position.y,block1.transform.position.z); break; case 2:block2.transform.position=new Vector3(-0.80f,block2.transform.position.y,block2.transform.position.z); break; case 3:block3.transform.position=new Vector3(-2.35f,block3.transform.position.y,block3.transform.position.z); break; case 4: fuelst=Random.Range(0,4); if(fuelst==0){fuelpos=2.40f;} if(fuelst==1){fuelpos=0.90f;} if(fuelst==2){fuelpos=-0.80f;} if(fuelst==3){fuelpos=-2.35f;} fuel.transform.position=new Vector3(fuelpos,fuel.transform.position.y,fuel.transform.position.z); break; } if (score>data)// если текущее пройденное расстояние превышает то что записано в файле рекорда то идет обновление данных { StreamWriter scoredata=new StreamWriter(Application.persistentDataPath + "/score.gd");//создаем файловую переменную для хранения пройденного расстояния scoredata.WriteLine(score);//записываем новое значение в файл scoredata.Close();//закрываем файловую переменную } } } void OnGUI(){ GUI.Box (new Rect (0, 0, Screen.width, Screen.height*0.05f), "Distance(m): " + score,mystyle);//создаем окно для подсчета расстояния } }

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

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

Автомобиль

Киньте спрайт машины на сцену.

Установите авто в любое место на трассе. Создайте скрипт carcontroller.cs и повести его на машину. Ниже находится содержимое скрипта:

Using UnityEngine; using System.Collections; using UnityStandardAssets.CrossPlatformInput; public class carconroller: MonoBehaviour { void Start () { } public void Update () { if (transform.rotation.z !=0) //проверка столкновения коллайдера автомобиля и препятствия, при столкновении происходит загрузка меню { Application.LoadLevel (0); } } } public void OnGUI() { if (GUI.RepeatButton (new Rect (Screen.width*0.1f, Screen.height*0.9f, Screen.width*0.2f, Screen.height*0.08f), "L")) //создаем кнопку для движения влево { if (transform.position.x > -2.4f) { transform.Translate (new Vector3 (-0.05f, 0f, 0f)); } } if (GUI.RepeatButton (new Rect (Screen.width*0.7f, Screen.height*0.9f, Screen.width*0.2f, Screen.height*0.08f), "R")) //создаем кнопку для движения вправо { if (transform.position.x < 2.4f) { transform.Translate (new Vector3 (0.05f, 0f, 0f)); } } } }

Посредством скрипта автомобиль получит возможность перемещаться .

Бензобак

Для создания показателя наполненности бензобака необходимо использовать одинаковые спрайты разных цветов .

Сделайте зеленый спрайт дочерним. Следующий аналогичен с предыдущими пунктами: создать скрипт (fuelscript.cs) и повесить его на бензобак (fuel) с таким содержанием:

Using UnityEngine; using System.Collections; public class fuelscript: MonoBehaviour { public GameObject fuelall; float mytimer=100f;// задание плавающего числа // Use this for initialization void Start () { } void Update () { mytimer = 100f; mytimer -= Time.deltaTime;//изменения числа с течением времени if (mytimer/mytimer==1f) //проверка на период времени в 1 секунду { fuelall.transform.position=new Vector3(fuelall.transform.position.x-0.0011f,fuelall.transform.position.y,fuelall.transform.position.z); fuelall.transform.localScale = new Vector3(fuelall.transform.localScale.x-0.001f, 1, 1); //выше идет сдвижение влево и уменьшение по ширине зеленой полосы для имитации шкалы } if (fuelall.transform.localScale.x < 0) //если шкала исчезла то загрузка идет загрузка главного меню { Application.LoadLevel(0); } } }

Трасса в нашем меню называется road183 , а ее копия – road183(1) . В дочерний объект fueltrack добавьте скрипт, отвечающий за восполнение бензобака при его контакте с автомобилем. Следующим шагом будет создание скрипта triger.cs. Повесьте его на fueltrack в каждой трассе. И отметьте объект, как Is Triger с таким кодом:

Using UnityEngine; using System.Collections; public class triger: MonoBehaviour { public GameObject fuel;//добавляем сюда greenfuel // Use this for initialization void Start () { } // Update is called once per frame void Update () { } void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.name == "playercar") //проверка пересечения автомобиля и объекта fuel { fuel.transform.position=new Vector3(0,fuel.transform.position.y,fuel.transform.position.z); fuel.transform.localScale = new Vector3(1, 1, 1); //восстановление у объекта fuel стандартных значений } } }

Итоговый результат – незамысловатая аркадная гонка, которую можно причислять к «убийцам времени» на Android.

Инструкция

Выберите платформу, для которой будет ваша игра. Так как рынок мобильных операционных систем очень разнообразен, и у каждой системы есть свои особенности создания приложений. Наиболее популярными сейчас являются следующие системы iOs, Android, Symbian OS и Windows Phone 7. Для начала лучше всего подойдет операционная система Windows Phone 7. В ней удобная среда разработки, которая поддерживает различные технологии типа XNA и Silverlight.

Изучите язык программирования. Это главный этап при создании любой программы. И чем больше навыки программирования, тем больше возможностей реализации идей. Одним из мощных и в то же время легких в освоении языков программирования является C#. Разработанный компанией Microsoft как альтернатива языку Java, этот язык имеет большие возможности.

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

Установите среду разработки. Чтобы создавать игры для Windows Phone 7, вам понадобятся Visual Studio 2010 и Windows Phone Developer Tools. Оба продукта – совершенно бесплатны

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

Займитесь дизайном игры. Часть контента приложения такие как: текстуры, картинки, шрифты и звуки можно найти в интернете. Остальное можете нарисовать сами или попросить кого-нибудь другого.

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

Если игра готова – опубликуйте её. Выложите её в свободный доступ или зарегистрируйтесь в магазине приложений и попытайтесь на ней заработать. Не забрасывайте свое детище, а старайтесь поддерживать его, улучшая и внося что-то новое.

Видео по теме

Источники:

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

Инструкция

Определитесь с мобильной операционной системой, для которой будет рассчитана игра. Дело в том, что на сегодня в мире нет той единственной мобильной платформы, которая подавляет своим количественным большинством (например, как у компьютеров, где несомненно лидирует Windows). Каждый производитель продвигает что-то свое, и в итоге рынок имеет порядка десяти операционных систем. Самыми используемыми можно назвать операционные системы Android, Symbian OS, iOs и Windows Phone 7.
В самом начале разрабатывать игру придется для одной из этих платформ, а уже после переделывать (портировать) игру под другие. Такой процесс нетривиален и требует смелого подхода, т.к. порой различие между платформами весьма существенное.

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

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

Денис Зарицкий

Разработчик программного обеспечения. Увлекается разработкой игр на Unreal Engine, также интересны: JavaScript, HTML5, Node.js, User Experience, онлайн-образование, искусственный интеллект и интернет-маркетинг. Любит участвовать в стартапах и интересных проектах.

Многие мечтают создать собственную игру. Но перед тем, как начать её разрабатывать, необходимо определиться с игровым движком, которых существует огромное множество.

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

Давайте взглянем на список!

Представляет собой кросс-платформенный движок для создания игр под iOS и Android. API позволяет делать 2D-игры, а также поможет вам создавать сложные функции, используя API на основе Lua. Кроме того, вы можете монетизировать Corona SDK с помощью Corona Ads. Разработка с Corona достаточно проста благодаря тестированию в режиме реального времени.

Corona включает в себя такие интересные фичи, как Corona Editor , Sublime Text plugin и многие другие. Composer GUI , доступный на OS X, предоставит вам графическую среду, в которой вы сможете создавать уровни для игр и видеть, как объекты взаимодействуют друг с другом, используя Corona’s physics engine.

Unity

Это фреймворк для разработки десктопных и мобильных HTML5-игр, базирующийся на библиотеке PIXI.js . Поддерживает рендеринг в Canvas и WebGL, анимированные спрайты, частицы, аудио, разные способы ввода и физику объектов. Phaser распространяется с открытым исходным кодом по лицензии MIT . Это означает, что вы можете использовать код без ограничений, но с сохранением уведомлений об авторском праве в копиях ПО, то есть в тексте вашей лицензии необходимо будет добавить указание авторских прав на этот фреймворк. Он хорошо поддерживается Ричардом Дэви и появившимся вокруг него сообществом.

Появившийся в 2010 году, - это проект с открытым исходным кодом, распространяющийся по лицензии MIT. Разработка игр в Cocos2d-x строится на использовании спрайтов. С помощью этих контейнеров создаются всевозможные сцены, например игровые локации, или меню. Управление спрайтами происходит при помощи анимации или программного кода на языках C++, JavaScript или Lua. Благодаря современному визуальному интерфейсу спрайты можно легко изменять, перемещать, масштабировать и проводить с ними прочие манипуляции.

Это кросс-платформенный фреймворк, который написан на Java и работает с OpenGL. Предлагает поддержку нескольких платформ для публикации игры. Ingress (предшественник Pokémon GO) был разработан с использованием libGDX. Поддержка сообщества также великолепна, благодаря этому вы можете получить отличную документацию для работы.

Заключение

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