Автоматизированное мобильное приложение под Android - Студенческий научный форум

XI Международная студенческая научная конференция Студенческий научный форум - 2019

Автоматизированное мобильное приложение под Android

 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Введение

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

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

На текущий момент, выбор ОС для разработки мобильного приложения не столь затруднителен, так как рынок мобильных операционных систем поделен между Android от компании GoogleInc. и iOS от компанииApple. Обе компании предлагают собственные инструменты разработки, собственные площадки цифровой дистрибуции GooglePlayMarketи AppStore. Но GoogleInc. открыла исходный код своей ОС и любой производитель смартфонов может установить Android на свой продукт. Это привело к тому, что по состоянию на 1 квартал 2018 года из 383,50 миллионов проданных смартфонов 329,31 миллионов работают под управлением ОС Android, что составляет 85,9% от общего числа устройств.

За первый квартал 2018 года число загрузок с GooglePlayMarket превысило 19,2 миллиарда. Доход составил свыше 5 миллиардов долларов. Самой прибыльной категорией стали игры с огромной долей в 90%.

Таким образом, разработку мобильного игрового можно считать актуальной. В обозримом будущем именно Android будет доминировать на рынке мобильных ОС.

Цель работы: разработка мобильного игрового приложения для ОС Android в жанре аркада.

Задачи:

Провести анализ предметной области;

Провести сравнение существующих аналогов;

Разработать модели средствами UML;

Разработка и тестирование приложения.

АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ

Общие сведения

В 2008 году на рынок выходит смартфон HTCDream в форм-факторе горизонтального слайдера с такими характеристиками: 3,2 дюймовый дисплей с разрешением 320х480 (180 ppi), Bluetooth 2.0 EDR/A2DP, Wi-Fi, 3,2 Мп камера с автофокуом. Имел 192 Мб оперативной памяти, 256 Мб постоянной с возможностью использования карт памяти до 16 Гб и процессор Qualcomm, работающий на частоте 528 Мгц. Особый интерес здесь представляет ОС аппарата – Android, разработанная AndroidInc. в составе GoogleInc., которая купила их в 2005 году. Являвшейся новинкой на рынке, уже через 3 года, в 2011 году, Android выходит на первое место на рынке мобильных ОС с долей в 29,7% , сместив прежнего лидера – Symbianот финкой компании Nokia. В чем-же причина такого успеха?

У Android имеется множество производителей, выпускающие устройства в разных ценовых категориях для всех категорий людей: Samsung, LG, HTC, Sony и многие другие. Смартфоны, планшеты, ТВ и игровые приставки, телевизоры, ПК, смарт-часы, бортовые компьютеры автомобилей – далеко не полный список Android-устройств.

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

С выходом ОС от Google у нее появилось сильное и постоянно увеличивающиеся сообщество разработчиков. Доработки, сделанные сторонними программистами, нередко появлялись в официальных сборках. Энтузиасты разрабатывают собственные прошивки с регулярными обновлениями самая популярная из которых CyanogenMod, от CyanogenTeam, ныне CyanogenInc., переродившаяся в виде LineageOS.

Помимо глобальных переработок, пользователи по всему миру создают различные лончеры, виджеты, иконки прносящие графические улучшения, позволяющие настроить девайс под себя. Выкладывать свои приложения удобно на официальной площадке от Google, PlayMarket. Достаточно зарегистрировать аккаунт разработчика разово заплатив $25. ИспользуяPlayMarket, любой пользователь Android может легко скачать и установить приложения на свое устройство.

Мобильные игровые приложения

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

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

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

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

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

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

Сравнительный анализ аналогов

Аналоги разрабатываемого приложения были взяты с площадки GooglePlaymarket:

Battle Tank 2017 Classic (Рисунок 1–2).

Классические танки с приставки NES.

Особенности: дружественный интерфейс, 50 уровней.

Игра полностью бесплатна.

Рисунок 1 – Battle Tank 2017 Classic, главноеменю

Рисунок 2 – Battle Tank 2017 Classic, геймплей

Tank Battle – Mini War (Рисунок 3 – 4).

Игра в жанре аркада с защитой базы от вражеских танков.

Особенности: 5 уровней сложности, 6 типов врагов, 280 уровней.

Игра бесплатна.

Рисунок 3 – Tank Battle – Mini War, главноеменю

Рисунок 4 – Tank Battle – Mini War, геймплей

Tank War (Рисунок 5–6).

Аркада с элементами защиты базы .

Особенности: 100 уровней, дополнительное оружие, новое управление.

Распространяется игра бесплатно.

Рисунок 5 – TankWar, главное меню

Рисунок 6 – Tank War, геймплей

Битва танков 1990 (Рисунок 7–8).

Игра представляет собой переосмысление механики классических Battle City под современные реалии.

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

Игра распространяется бесплатно.

Рисунок 7 – Битва танков 1990, главное меню

Рисунок 8 –Битва танков 1990, геймплей

Супер Танк(Рисунок 9–10).

Игра, выполненная в стилистике классической игры BattleCity.

Особенности: супер-режим, режим соревнования, обновлённое оружие.

Игра полностью бесплатна.

Рисунок 9 – Супер Танк, главное меню

Рисунок 10 – Супер Танк, геймплей

Танчики 1990 (Рисунок 11–12)

Игра в жанре аркада с атмосферой денди.

Особенности: новые танки, шкала опыта, свыше 35 уровней .

Игра бесплатна, присутствует реклама.

Рисунок 11 – Танчики 1990, главное меню

Рисунок 12 – Танчики 1990, геймплей

В таблице 1 представлены плюсы и минусы аналогов разрабатываемого приложения.

Таблица 1 – Сравнение аналогов

Название

Цена

Мульти-плеер

Разделенный экран

Мультиязычность

Таблица рекордов

Рейтинг в Google Play

Battle tank 2017 Classic

Бесплатно

-

-

-

-

4,4

Tank Battle – Mini War

Бесплатно

-

-

+

-

4,0

Tank War

Бесплатно

-

-

-

+

4,4

Битва танков 1990

Бесплатно

-

-

-

-

4,0

Супер Танк

Бесплатно

-

-

-

+

4,4

Продолжение таблицы 1

Название

Цена

Мульти-плеер

Разделенный экран

Мультиязычность

Таблица рекордов

Рейтинг в Google Play

Танчики 1990

Бесплатно

+

-

-

-

4,3

С учетом перечисленных в таблице 1 плюсов и минусов, проектируемое приложение будет иметь следующий функционал:

мульти-плеер;

иметь таблицу рекордов.

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

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

В таблице 2 представлены наиболее популярные из них:

Таблица 2 – Сравнение инструментов разработки

Наименование

Плюсы

Минусы

Лицензия

AppGameKit

наличие компилятора; скрипты 2D графики, физики и мультиплеера.

слабая техподдержка; множество багов.

$79

Cocos 2D

богатый выбор инструментов; открытый исходный код; сильное сообщество

сложен в применении; высокий порог вхождения; разработан под Mac/iOS;

Бесплатно

Продолжение таблицы 2

Game Maker Studio

Простое управление; Свой язык программирования GML.

Сложность устранения неполадок.

Бесплатно/ за релиз на мобильные платформы $499.

GameSalad

Активное сообщество;

Быстрая разработка.

Малый набор инструментов; Заточенность под iOS.

Basic - $17/мес., PRO - $25/мес.

LibGDX

Низкий порог вхождения для тех, кто знаком с AndroidStudio; Возможность подключать сторонние библиотеки.

Медленная разработка из-за обилия кода;

Отсутствие четкой документации.

Бесплатно

UnrealEngine

Хорошая техподдержка; Большой набор инструментов.

Сложность некоторых инструментов.

Подписка за $19/мес. и 5% от дохода, если заработок превысит$5000.

Unity 2017

Легкость в использовании; Возможность полноценной разработки 2D – игр; Огромное сообщество.

Некоторые инструменты нужно создавать самому.

Бесплатно, если годовой доход не превышает $100 000. При превышении - купить PRO – версию за $3000 или $75/мес.

Мной было принято решение использовать в качестве среды разработки игровой редактор Unity 3D, т. к. он способен в полной мере реализовать поставленные цели.

Движок Unity 3D был создан компанией UnityTechnologies и первая версия вышла 8 июня 2005 года. Представляет собой инструмент для разработки 2D и 3D приложений и игр. Работает на основных операционных системах – Windows, Mac/OSX и Linux. Позволяет вести разработку под более чем 24 различных платформ, включая Windows, OSX, Android, iOS, Linux, PlayStation3/4 и другие.

На официальном сайте Unity можно загрузить последнюю версию Unity 2017 из трех категорий: бесплатно – Personal, $35 в месяц – Plus и $125 в месяц – Pro. Для реализации дипломного проекта вполне хватит версии Personal. Также здесь можно изучить документацию Unity, просмотреть бесплатные видео-уроки от разработчиков и пообщаться на форуме.

Основным инструментом работы является сцена. Здесь отстраивается уровень игры путем dragn-and-drop – перетаскивай и используй: достаточно расставить модели на сцене путем перетаскивания и описать их взаимодействие.

Рисунок 13 – сцена примера в Unity

Запускается проект во встроенном отладчике во вкладке Game.

Рисунок 14 – проект в отладчике Game

Для написания скриптов в Unity 3D используются два основных языка – С# и JavaScript. Они просты в изучении, по сравнению с С++ и Java, но не уступают им по своим возможностям. Редактировать код можно во встроенном редакторе MonoDevelop или в MicrosoftVisualStudio с помощью плагина.

Рисунок 15 – новый проект в MonoDevelop

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

Выводы по разделу

В главе 1.1 общие сведения были собраны общие сведения о платформе Android, в результате чего выявлены основные причины его популярности:

отсутствие лицензионных отчислений;

открытый исходный код;

выпуск специализированных средств для разработки приложений для этой платформы;

наличие собственного магазина приложений GooglePlay.

поддержка сторонних программистов.

В главе 1.2 Мобильные игровые приложения были рассмотрены игровые приложения.

В главе 1.3 Сравнительный анализ аналогов был проведен анализ аналогов разрабатываемого приложения, найденных на площадке Google Play в жанре аркада, в результате которого был составлен функционал проектируемого приложения:

одиночная игра;

мультиплеер;

таблица рекордов.

В главе 1.4 Выбор инструментов для разработки игровых приложений был проведен анализ средств разработки с выявлением плюсов и минусов каждого, на основе которого был выбран игровой движок Unity 2017, так как он:

легок в использовании;

имеет огромное сообщество;

бесплатен.

2 Теоретическая часть

2. 1 Общие сведения

Одним из этапов разработки приложения является проектирование структуры программы. Для этого используется UML. UML (Unified Modeling Language ‒ унифицированный язык моделирования) – это графический язык для визуализации, описания и конструирования различных программ. Диаграммы создаются с помощью специальных средств. Они позволяют генерировать диаграммы из кода различных объектно-ориентированных языков. Эта функция называется реверсивный инжиниринг.

2.2 Разработка моделей средствами языка UML

2.2.1 Диаграмма вариантов использования (Use-casediagram)

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

Основными объектами диаграммы вариантов использования являются Игрок, база данных и сервер.

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

База данных может сохранять и загружать данные, когда игрок выбирает просмотр рекордов и изменение настроек.

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

Рисунок 16 – Диаграмма вариантов использования

2.2.2. Диаграмма последовательности (Sequence diagram

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

Главными объектами диаграммы последовательности являются игрок, система, база данных и сервер. Они привязаны к линии времени, на которой отображаются линии жизни каждого элемента и их взаимодействие.

Когда игрок запускает приложение система выводит главное меню, в котором пользователь может переходить по пунктам.

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

Когда игрок выбирает рекорды система отправляет запрос базе данных, которая отправляет ей сохранённые данные. При получении данных система выводи игроку окно с загруженными данными.

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

На рисунке 17 представлена диаграмма последовательности приложения.

Рисунок 17 – Диаграмма последовательности

Рисунок 18 – Диаграмма последовательности (продолжение)

Рисунок 19 – Диаграмма последовательности(конец)

2.2.3. Диаграмма состояний меню приложения (Statediagram)

Диаграмма состояний применяется для отображения перехода элемента между различными своими состояниями.

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

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

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

По кнопке настройки осуществляется переход к окну настройки, на котором находится кнопка главное меню. Нажатие этой кнопки открывает главное меню приложения.

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

Рисунок 20 – Диаграмма состояния меню приложения

В таблице 3 представлены условные обозначения диаграммы состояния.

Таблица 3 – Обозначения диаграммы состояния

Обозначение

Действие

Х1

Нажата кнопка «Выйти в меню»

Х2

Нажата кнопка «Одиночная игра»

Х3

Нажата кнопка «Назад»

Х4

Нажата кнопка «Пауза»

Х5

Нажата кнопка «Нет»

Х6

Нажата кнопка «Да»

Х7

Нажата кнопка «Выход»

Х8

Нажата кнопка «Настройки»

Х9

Нажата кнопка «Мультиплеер»

2.2.4. Диаграмма деятельности (Activitydiagram)

Диаграмма активности описывает поведение системы. Она похожа на диаграмму состояния и имеет похожие элементы.

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

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

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

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

 

Выход из игровой комнаты

Рисунок 21 – Диаграмма деятельности мультиплеера приложения

2.3 Выводы по разделу

В главе 2.1 общие сведения приведены общие сведения о языке визуального программирования UML.

В главе 2.2 разработка моделей средствами языка UML были разработаны и описаны основные модели разрабатываемого приложения, а именно:

диаграмма вариантов использования;

диаграмма последовательности;

диаграмма состояния меню;

диаграмма деятельности.

3 Техническое решение

3.1 Общие сведения

Разработка приложения начинается с графической части, так как для работы в Unity 2017 сначала нужно расставить объекты на вкладке Scene. Для этого с бесплатного источника были скачаны игровые ресурсы. В любом приложении есть две части: графический интерфейс и программный код.

3.2. Графический интерфейс

Экран главного меню представляет собой фон с кнопками для перемещения по пунктам меню. Экран представлен на рисунке 32.

Рисунок 22 – Главное меню приложения

При нажатии кнопки одиночная игра открывается игровое поле в режиме одиночной игры(рисунок 23), в котором при нажатии кнопки пауза открывается подменю пауза(рисунок 24) из которого можно выйти в основное меню или вернутся назад.

Рисунок 23 – Игровое поле в режиме одиночной игры

Рисунок 24 – Подменю пауза

Нажатие кнопки мультиплеер открывает игровое поле в режиме совместной игры (Рисунок 26).

При нажатии кнопки настройки открывается подменю настройки (Рисунок 25), в котором можно выбрать полноэкранный режим и регулировать звук.

Рисунок 25 – Подменю настройки

В этой главе показана реализация приложения средствами разработки Unity 2017, был продемонстрирован графический интерфейс.

3.3 Программный код

Для описания передвижения персонажа игры была создана функция GetInput

Листинг 1 – Функция GetInput

void GetInput () {
        left = Input.GetKey (KeyCode.LeftArrow) || Input.GetAxisRaw("Horizontal") < 0;
        right = Input.GetKey (KeyCode.RightArrow) || Input.GetAxisRaw("Horizontal") > 0;
        up = Input.GetKey (KeyCode.UpArrow) || Input.GetAxisRaw("Vertical") > 0;
        down = Input.GetKey (KeyCode.DownArrow) || Input.GetAxisRaw("Vertical") < 0;
        shot = Input.GetKeyDown (KeyCode.Space) || Input.GetButtonDown("Fire1");
    }

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

Искусственный интеллект в игре представляет собой рандомное поведение противника. ПередвижениепротивникаописановфункцииTurn() .

Листинг 2 –ФункцияTurn()

    void Turn() {
        int i = Random.Range (0, 4);
        if (i == 0)
            direction = 2;
        if (i == 1)
            direction = 4;
        if (i == 2)
            direction = 6;
        if (i == 3)
            direction = 8;
        if (direction == 4) {
            transform.rotation = Quaternion.Euler(transform.rotation.x,
                                                  transform.rotation.y, 90);
        }
        if (direction == 8) {
            transform.rotation = Quaternion.Euler(transform.rotation.x,
                                                  transform.rotation.y, 0);
        }
        if (direction == 2) {
            transform.rotation = Quaternion.Euler(transform.rotation.x,
                                                  transform.rotation.y, 180);
        }
        if (direction == 6) {
            transform.rotation = Quaternion.Euler(transform.rotation.x,
                                                  transform.rotation.y,270);
        }   
        transform.position = new Vector2 (Mathf.Round(transform.position.x),
                                              Mathf.Round(transform.position.y));
    }

Выпадают случайные значения от 1 до 4, обозначающие направление движения персонажа. В зависимости от выпавшего числа идет передвижение персонажа.

В игре присутствует система бонусов, которые изменяют значение персонажа игрока. ОнописановфункцииOnTriggerEnter2D.

Листинг 3 –ФункцияOnTriggerEnter2D

    void OnTriggerEnter2D (Collider2D other) {
        player = FindObjectOfType<PlayerController> ();
        if (other.tag == "Player") {
            if (type == 0) {
                player.ToggleInvincibility();
                SoundHandler.PlaySound (SoundHandler.star);
            }
            if (type == 1) {
                EnemyController[] enemies = FindObjectsOfType<EnemyController>();
                for (int i=0; i < enemies.Length; i++) {
                    enemies[i].Paralyse ();
                    enemies[i].Stop ();
                }
                SoundHandler.PlaySound (SoundHandler.star);
            }
            if (type == 2) {
                lm.Defence();
                SoundHandler.PlaySound (SoundHandler.star);
            }
            if (type == 3) {
                player.AddStar();
                SoundHandler.PlaySound (SoundHandler.star);
            }
            if (type == 4) {
                EnemyController[] enemies = FindObjectsOfType<EnemyController>();
                for (int i=0; i < enemies.Length; i++) {
                    enemies[i].Kill ();
                }
            }
            if (type == 5) {
                lm.lifes++;
                SoundHandler.PlaySound (SoundHandler.life);
            }
            if (type == 6) {
                player.AddStar();
                player.AddStar();
                player.AddStar();
                SoundHandler.PlaySound (SoundHandler.star);
            }

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

3.4 Выводы по разделу

В главе 3.1 общие сведения были приведены основные этапы при разработки приложения.

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

В главе 3.3 программный код были приведены примеры кода разрабатываемого приложения, а именно описаны движение игрока и противника, взаимодействие игрока с объектом бонус.

Заключение

В ходе выполнения работы было были выполнены поставленные задачи.

В главе 1 Анализ предметной области был проведен анализ, который показал, что устройства на платформе Android сейчас пользуются популярностью по причинам:

отсутствие лицензионных отчислений;

выпуск специализированных средств для разработки приложений для этой платформы;

наличие собственного магазина приложений Google Play.

Был проведен анализ аналогов разрабатываемого приложения, найденных на площадке Google Play в жанре аркада, в результате которого был составлен функционал проектируемого приложения:

мультиплеер;

таблица рекордов.

Выбор инструментов для разработки игровых приложений был проведен анализ средств разработки с выявлением плюсов и минусов каждого, на основе которого был выбран игровой движок Unity 2017, так как он:

легок в использовании;

бесплатен.

В главе 2 Теоретическая часть были описаны и разработаны диаграммы UML, а именно диаграмма вариантов использования, диаграмма последовательности, диаграмма состояния и диаграмма активности.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

ГОСТ 2.105–95 «ЕСКД. Общие требования к текстовым документам».

ГОСТ 7.9-95 Система стандартов по информации, библиотечному и издательскому делу. Реферат и аннотация. Общие требования.

ГОСТ P 7.0.5–2008 «Система стандартов по информации, библиотечному и издательскому делу. Библиографическая ссылка. Общие требования и правила составления».

П 2.4.0.06-2014 «Система менеджмента качества. Государственные экзаменационные комиссии и апелляционная комиссия по результатам государственной итоговой аттестации».

РК 1.0.3.01-2015 «Система менеджмента качества. Качество образовательных услуг».

СТО 2.2.4.05-2014 «Система менеджмента качества. Порядок организации и осуществления образовательной деятельности по образовательным программам высшего образования – программам бакалавриата, специалитета, магистратуры».

СТО 2.3.3.03-2014 «Система менеджмента качества. Управление библиотечным фондом».

СТО 2.2.4.21-2015 «Система менеджмента качества. Порядок проведения государственной итоговой аттестации по образовательным программам высшего образования – программам бакалавриата, программам специалитета и программам магистратуры.

П 2.2.1.03-2013 «Система менеджмента качества. Об обработке и защите персональных данных работников и обучающихся».

Хокинг Д. Unity в действии. Мультиплатформенная разработка на C#. – М.:Питер, 2016. – 336с.

Дейтел П., Дейтел Х., Уолд А. Android для разработчиков. – М.:Питер, 2016. – 382с.

Цехнер М. Разработка игр под Android – М.: Питер, 2016. – 688с.

Смирнов М. UML – быстрый старт. URL: http://michaelsmirnov.blogspot.com/2011/03/uml.html?showComment=1356276195609, свободный.

Компьютерная игра - Википедия. URL: https://ru.wikipedia.org/wiki/Компьютерная_игра, свободный.

Как создать внутриигровое меню в Unity. URL: https://habr.com/post/346370/, свободный.

Создание игры на Unity. URL: https://www.youtube.com/watch?v=of3sjWOr19U&list=PL0lO_mIqDDFXusFv_NRgccTQHFBdChWCo, свободный.

Руководство пользования Unity. URL: https://docs.unity3d.com/ru/current/Manual/UnityManual.html, свободный.

Хейлсберг А., Торгерсен М., Язык программирования C#. Классика Computers Science – М.:Питер, 2013. – 784с.

СтиллменЭ., ГринД., Head First. Изучаем C# – М.: Питер, 2017. – 816с.

Просмотров работы: 43