Аннотация 3
Введение 5
1 Аналитическая часть 8
1.1 Анализ и общая характеристика предметной области 8
1.1.1 Типы и жанры игр для разработки 8
1.1.2 Т ермины наиболее характерные для проекта 10
1.2 Анализ существующих разработок 12
1.3 Анализ средств разработки и обоснование выбора технологий 14
1.4 Общий алгоритм реализации проекта 19
1.4.1 Особенности физического движка Unity 19
1.4.2 Написание логики перемещения объектов в пространстве 21
1.4.3 Написание генераторов паттернов 22
1.4.4 Реализация визуальной части игры 24
2 Проектная часть 26
2.1 Характеристика потенциальной аудитории проекта.
Ориентированность работы 26
2.2 Постановка задачи проекта 27
2.2.1 Актуальность проекта 27
2.2.2 Цель и назначение проекта 28
2.2.3 Функционал и интерфейс проекта 29
2.2.4 Входные данные к проекту 32
2.2.5 Характеристика оборудования для реализации проекта 39
2.3 Жизненный цикл проекта. Описание поэтапной реализации проекта с
указанием средств реализации 40
2.3.1 Этап написания базовой механики 40
2.3.2 Создание абстрактных классов и упрощение взаимодействия .. 41
2.3.3 Создание генератора паттернов и пула объектов 41
2.3.4 Создание котроллера игры 45
2.3.5 Создание интерфейса 46
2.3.6 Привязка спрайтов к объектам, создание заднего фона 47
2.3.7 Этап тестирования 50
2.4 Технические требования к проекту 52
2.5 Калькуляция проекта 53
Заключение 55
Список использованных источников 57
Приложение 60
В современном мире индустрия цифровых развлечений занимает не последнее место в жизни людей. Видеоигры уже стали одним из самых популярных видов развлечений, а также являются частью мировой культуры. Тем не менее они продолжают развиваться и набирать популярность. Доходы крупных компаний на рынке компьютерных игр достигают миллиардов долларов. Упрощаются средства цифровой дистрибуции, открываются новые возможности для развития новым разработчикам, сектор так называемого indie (independent) рынка растёт с каждым годом. И это касается лишь игр, как средства развлечения и времяпрепровождения. Видеоигры достаточно быстро развиваются как средства обучения, набирая популярность в абсолютно разных сферах. От обучающих игр для детей дошкольного и школьного возраста, до своеобразных симуляторов ЖД механика. Новые разработки в сфере видеоигр всё сильнее стирают грань между играми как развлечением и играми, как инструмент для развития.
Видеоигры уходят корнями далеко в 1950-е годы, когда ещё не существовало ни персональных компьютеров, ни термина «видеоигры». Игры разрабатывались в качестве эксперимента, научной работы, или просто так, потому что это было интересно.
В 1972 году выходит первая игровая консоль The Magnavox Odyssey. Коммерчески успешна, превысив 350000 продаж.
1978-1979 - выход двух легендарных игр Space Invaders и Pac-Man. Обе игры оказали колоссальное влияние на дальнейшие развитие индустрии. Space Invaders пробудил интерес людей к видеоиграм и программированию, доказав, что игры могут противостоять другим крупным индустриям, например, кино. Space Invaders обрела популярность, как у себя на родине в Японии, так и за рубежом, принеся Atari за 30 лет 500000000 долларов. Pac-Man же стал одним из самых узнаваемых персонажей видео игр. Игра обрела популярность по всему миру, и была портрирована почти на все платформы, использовав при этом отличный от вездесущего на тот момент космического стиля. Игра не была ни шутером, ни pong-системой, и показала абсолютно новый на тот момент жанр, без насилия, и покрывала гораздо большую аудиторию. В дальнейшем это подтолкнуло разработчиков видеоигр на создание нестандартных аркад.
С 1980-х начинается эра персональных компьютеров, и переход игр с аркадных автоматов на ПК. В 80-х выходят игры, так же формирующие индустрию, и более того, некоторые серии существуют и разрабатываются до сих пор. Из игр тех лет можно выделить: The Legend of Zelda, вышедшею впервые в 1986 году, а последняя часть вышла в 2017, и игра не теряет популярности, Final Fantasy, в жанре JRPG, впервые выпущенная в 1987, и имеющая на сегодняшний день целую серию игр в разных жанрах и на разных платформах. Donkey Kong же не продолжился как серия, однако, положил начало для не менее легендарной серии игр про Mario, насчитывающую на сегодняшний день больше 20 игр, на множестве платформ, в самых разных жанрах.
С 1990-х по сегодняшний день сформировалось множество жанров в игровой индустрии, и каждый находит множество последователей. Игровая индустрия не имеет долгой истории, однако даже за столь короткий промежуток, потерпела сильные изменения, за почти 70 лет, игры сменили множество платформ, перейдя с университетских экспериментальных ЭВМ на персональные компьютеры, консоли и даже смартфоны. Развиваются площадки, для поддержки независимых разработчиков и цифровой дистрибуции игр. На сегодняшний день видеоигры уже имеют огромную популярность, и продолжают завоёвывать всё новых фанатов. И чем выше количество играющих людей, тем больше спрос на новые игры.
Объект исследования: видеоигры.
Предмет исследования: разработка видеоигры.
Цель выпускной квалификационной работы: разработка игры с применением тригонометрических функций.
Задачи:
• проанализировать предметную область и разработки внутри данной области;
• выбрать программные средства разработки на основе анализа представленного программного обеспечения;
• проанализировать тонкости работы с выбранным программным обеспечением;
• на основе выбранного жанра, реализовать программный продукт с использованием выбранных программных средств.
На сегодняшний день компьютерные игры являются неотъемлемой частью индустрии развлечений. К сожалению, в России данная отрасль развита не столь сильно, а в обществе до сих пор существует скептицизм по отношению к компьютерным играм, как к явлению. Не смотря на всё это, сектор инди игр всё сильнее развивается и набирает популярность, а средства разработки становятся всё более доступными для всех желающих. Тем не менее разработка компьютерных игр - долгий и трудоёмкий процесс, требующий много усилий.
В процессе выполнения проекта, были проанализированы предметная область, и имеющиеся внутри неё разработки. Исследованы программные средства раработки, проанализированы сильные и слабые стороны различного программного обеспечения для реализации и, на основе полученных данных, выбраны средства реализации проекта. В конечном итоге, была реализована полноценная компьютерная игра, с соответствующими выбранному направлению механиками и геймплеем. Для реализации было создано множество строк кода, позволяющие собрать цельную игровую механику, и формирующие полноценный геймплей, вкупе с созданными спрайтами, формирующими уникальную игровую стилистику. В процессе создания учитывались особенности работы игрового движка, что позволило реализовать основной аспект «danmaku» игр - нахождение огромного числа объектов на игровом поле.
Выполнение проекта в рамках выпускной квалификационной работы, посвящённой реализации компьютерной игры с нуля, позволило получить колоссальный опыт, полезный не только в рамках разработки компьютерных игр. На основе полученного опыта, можно продолжать совершенствование навыков в разработке, и непосредственно сами разработки игр. Игровой движок Unity является очень востребованным на рынке. Многие корпорации такие как Google, Intel, Apple и другие, являются оффициальными партнёрами Unity, что обеспечивает развитие движка не только в направлении компьютерных игр. За счёт этого, среда использования движка имеет области, не связанные с разработкой игр. Движок часто используется для создания «try before you buy» проектов, позволяющие продемонстрировать товар покупателю, до его непосредственной покупки, что актуально в сфере строительства. Unity так же используется в разработке обучающих приложений, чья возрастная категория не ограничивается детьми. Всё это повышает ценность умений работы в выбранном средстве разработки.
1. Гуриков С.Р. Введение в программирование на языке Visual C#: учебное пособие [Текст] / С.Р. Гуриков — Москва: ФОРУМ : ИНФРА-М, 2013 — 448 с.
2. Дикинсон К. Оптимизация игр в Unity 5 [Текст] / К. Дикинсон. — Москва: ДМК, 2017. — 306 с.
3. История видеоигр [Электронный ресурс]. — Режим доступа: http://history-of-video-games.webflow.io/istoriya-videoigr (дата обращения: 23.04.2017).
4. Купер А. Интерфейс. Основы проектирования взаимодействия [Текст]/ А. Купер, Р. М. Рейманн, Д. Кронин. — Под общ. ред. А. Купера. - Санкт-Петербург: Питер, 2017. — 720 с.
5. Павловская Т.А. C# Программирование на языке высокого уровня [Текст] / Т.А. Павловская — Санкт-Петербург: Питер, 2013 — 432 с.
6. Уэйншенк С. 100 новых главных принципов дизайна. [Текст]/ С. Уэйншенк. — Санкт-Петербург: Питер, 2016. — 288 с.
7. Хабрахабр [Электронный ресурс]. — Режим доступа: https://habrahabr.ru/post/248391/ (дата обращения: 07.02.2017).
8. Хакер [Электронный ресурс]. — Режим доступа: https://xakep.ru/2014/09/05/game-development-engines-review/ (дата обращения: 10.12.2016).
9. Хокинг Дж. Unity в действии. Мультиплатформенная разработка на C# [Текст] / Дж. Хокинг — Пер. с англ. И. Рузмайкиной. — Санкт-Петербург: Питер, 2016. — 336 с.
10. app-s.ru [Электронный ресурс]. — Режим доступа: http://app- s.ru/index/genres_of_games/0-52 (дата обращения: 24.04.2017).
11. Blogger [Электронный ресурс]. — Режим доступа: http://gamedesigntheory.blogspot.ru/2010/09/controlling-aspect-ratio-in-unity.html (дата обращения: 10.03.2017).
12. Catlike Coding [Электронный ресурс]. — Режим доступа:
http://catlikecoding.com/unity/tutorials/object-pools/ (дата обращения:
24.03.2017).
13. DevGam [Электронный ресурс]. — Режим доступа: http://devgam.com/sravnenie-igrovyx-dvizhkov-kakoj-vybrat (дата обращения: 10.12.2016).
14. evatotuts+ [Электронный ресурс]. — Режим доступа: https://gamedevelopment.tutsplus.com/tutorials/positioning-on-screen-indicators- to-point-to-off-screen-targets--gamedev-6644 (дата обращения: 14.03.2017).
15. GameMaker Studio 2 [Электронный ресурс]. — Режим доступа: http://docs2.yoyogames.com/ (дата обращения: 07.12.2016).
... всего 29 источников