Введение 3
Глава 1. Проектирование программного продукта 5
1.1 Основные черты жанра Roguelike 5
1.1.1 FTL: Faster than light 5
1.1.2 The Binding of Isaac 6
1.1.3 Don’t Starve 8
1.1.4 Nuclear Throne 9
1.2 Выбор среды разработки 11
1.2.1 Unity 11
1.2.2 Unreal Engine 13
1.2.3 GameMaker Studio 16
1.3 Объектная модель разрабатываемого приложения. 18
1.4 Методы геометрического моделирования. 19
1.4.1 Геометрические модели 19
1.4.2 Методы геометрического моделирования 21
Глава 2. Разработка приложения 27
2.1 Архитектура проекта на движке Unity 27
2.2 Элементы сцен 29
2.3 Реализация проекта. 33
Глава 3. Тестирование приложения 44
Заключение 48
Список использованных источников 49
Компьютерные и видеоигры к нашему времени обрели широкую популярность. Говоря о развлекательных видеоиграх, можно отметить, что оборот индустрии вырос в 2018 году до 135 миллиардов долларов.
Этим достижением игры обязаны нескольким факторам. Во-первых, благодаря быстрому технологическому развитию всего человечества, регулярно появляются новые платформы для игр, такие, как планшеты, смартфоны, и даже умные часы. Благодаря этому, игры как средство самовыражения становятся всё доступней для самых больших слоёв населения.
Во-вторых, сами по себе игры являются крайне гибким инструментом. Так, существуют не только развлекательные, но и научно-исследовательские, образовательные, даже медицинские проекты, например, системы реабилитации для больных, страдающих церебральным параличом, или перенёсших инсульт.
В-третьих, с появлением простых для понимания и, к тому же, бесплатных инструментов создания проектов, например, RPG Maker, Unity или Unreal Engine, разработка игры становится доступной для пользователей даже без технического образования. Разработчики же этого инструментария нередко снабжают свою продукцию сериями обучающих видео или текстовых курсов, позволяющих любому желающему детально разобраться в процессе создания видеоигры.
Соответственно, цель данной работы - разработка игрового приложения с использованием методов геометрического моделирования.
Для разработки был выбран игровой жанр roguelike. Это один из самых распространённых жанров видеоигр и при этом простой для освоения. Благодаря некоторым характерным особенностям, проекты в этом жанре поощряют исследовательский интерес пользователя, а также весьма насыщены действием.
Для достижения поставленной цели в работе были решены следующие задачи...
В результате выполнения выпускной квалификационной работы были
выполнены следующие задачи.
Был проведен анализ различных приложений. На основании полученной
информации составлена объектная модель разрабатываемого приложениявидеоигры, включающая описание объектов на игровом уровне, их поведение, а
также механики взаимодействия.
Рассмотрены различные методы геометрического моделирования,
используемые в разработке приложений, и примеры их использования в
движках 3D-графики, наподобие Unity. Также изучены различные типы
геометрических моделей, и рассмотрена специфика их применения в различных
ситуациях.
Изучены различные инструментальные среды для разработки
приложения, выбрана оптимальная.
Спроектировано, создано и протестировано приложение на движке Unity.
Приложение может быть дополнено и улучшено в дальнейшем, т.к.
инструментальная среда предлагает широкие возможности по разработке
приложений такого типа. В частности, возможно включить в игру сюжетные
сцены, добавить различные игровые механики, и т.д.
1. Andrew Troelsen, Philip Japikse, C# 6.0 and the .NET 4.6 Framework
(7th Edition), (русский перевод предыдущего издания: Язык
программирования C# 5.0 и платформа .NET 4.5, Эндрю Троелсен).
2. Cry Engine vs Unreal vs Unity [Электронный ресурс]. Режим
доступа: https://medium.com/@thinkwik/cryengine-vs-unreal-vs-unityselect-the-best-game-engine-eaca64c60e3e
3. Difference between Unreal Engine and Cry Engine [ Электронный
ресурс]. Режим доступа: https://www.educba.com/unreal-engine-vscryengine/
4. Epic Games State of Unreal Opening session [Электронный ресурс].
Режим доступа: https://www.youtube.com/watch?v=_veq6Q51Zlg
5. Joseph Albahari, Ben Albahari C# 7.0 in a Nutshell: The Definitive
Reference, (русский перевод предыдущего издания: C# 6.0.
Справочник. Полное описание языка, Джозеф Албахари, Бен
Албахари).
6. Sedgewick R. Algorithms in C, Part 5 - Graph Algorithms (3rd Edition
Pt 5.) - R. Sedgewick - Addison-Wesley Professional - 512 с. - 2001 -
ISBN 978-0201316636
7. Objectively comparing Unity and Unreal Engine [Электронный
ресурс]. Режим доступа:
8. Unity ad GDC Keynote [ Электронный ресурс]. Режим доступа:
https://www.youtube.com/watch?v=YlcXO7fRichttps://gametorrahod.com/objectively-comparing-unity-andunreal-engine/
9. Акопян А.В. Заславский А.А. Геометрические свойства кривых
второго порядка - Москва, МЦНМО Геометрические свойства
кривых второго порядка - 152 с. - 2011 - ISBN 978-5-94057-732-4
10.Анамова Р.Р., Леонова С.А., Пшеничнова Н.В. Инженерная и
компьютерная графика. Учебник и практикум для бакалавриата -
Москва, Юрайт - 246 с. - ISBN 978-5-9916-8262-6
11.Большаков В.П., Чагина А.В. Инженерная и компьютерная графика.
Теоретический курс и тестовые задания - В.П. Большаков, А.В,
Чагина - СПб., БХВ-Петербург - 384 с. - 2016 - ISBN
9785977537681
12.Бонд, Д.Г.. Unity и C#. Геймплей от идеи до реализации [текст] /
Бонд Джереми Гибсон, - СПб., Питер - 2019 - 928 с. - ISBN: 978-5-
4461-0715-5
13.Васильев А. - C#. Объектно-ориентированное программирование -
СПБ, Питер - 320 c. - 2012 - ISBN 978-5-459-01238-5
14.Вицулина Е.В., Журбенко П.А., Гузненков В.Н. Autodesk Inventor
2016 Трехмерное моделирование деталей и электронное
оформление чертежей. Учебное пособие - Москва, ДМК Пресс -
124 с. - 2017- ISBN 978-5-97060-514-1
15.Георгиевский О.В., Толкач А.Н. Основы инженерной графики
[текст] - Олег Викторович Георгиевский, А.Н. Толкач - Москва,
Издательство ассоциации строительных вузов - 304 с. - 2016 - ISBN
ISBN 978-5-93093-611-7... 33