Главная страница

РАЗРАБОТКА ПРИЛОЖЕНИЯ ДЛЯ ОРГАНИЗАЦИИ ВИРТУАЛЬНОЙ 3D-ЭКСКУРСИИ. Федеральное государственное бюджетное образовательное учреждение высшего образования башкирский государственный университет


Скачать 2.05 Mb.
НазваниеФедеральное государственное бюджетное образовательное учреждение высшего образования башкирский государственный университет
АнкорРАЗРАБОТКА ПРИЛОЖЕНИЯ ДЛЯ ОРГАНИЗАЦИИ ВИРТУАЛЬНОЙ 3D-ЭКСКУРСИИ
Дата25.08.2022
Размер2.05 Mb.
Формат файлаdocx
Имя файлаVKR_-_Azamat_GLAVA_1_2_nachalo_3_22_05_2018.docx
ТипДокументы
#653222

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«БАШКИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

СИБАЙСКИЙ ИНСТИТУТ (ФИЛИАЛ)

ЕСТЕСТВЕННО – МАТЕМАТИЧЕСКИЙ ФАКУЛЬТЕТ

КАФЕДРА ПРИКЛАДНОЙ МАТЕМАТИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ


ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА

ПО ПРОГРАММЕ БАКАЛАВРА

БАЯНОВА АЗАМАТА РАСУЛЕВИЧА
РАЗРАБОТКА ПРИЛОЖЕНИЯ ДЛЯ ОРГАНИЗАЦИИ
ВИРТУАЛЬНОЙ 3D-ЭКСКУРСИИ





Выполнила:

Студента 4 курса очной формы обучения

Направление подготовки

01.03.02 «Прикладная информатика»

Направленность

Прикладная математика и информатика




Допущено к защите в ГЭК и проверено

на объем заимствования:
Заведующий кафедрой

канд. пед. наук, доцент
__________________ И.С. Гумеров

(подпись)

«___»____________2018 г.

Руководитель

канд. пед. наук, доцент

__________________ И.С. Гумеров

(подпись)



СИБАЙ – 2018

ОГЛАВЛЕНИЕ


ВВЕДЕНИЕ 3

1.ПОДХОДЫ И ТЕХНОЛОГИИ ДЛЯ РАЗРАБОТКИ 3D-ЭКСКУРСИЙ 5

1.1.Компьютерная графика 5

1.1.1.Двумерная графика 6

1.1.2.Трехмерная графика 6

1.2 Моделирование в компьютерной графике 6

1.1.3.Полигональное моделирование 9

1.1.4.Сплайновое моделирование 10

1.2.3D-экскурсии 11

1.2.1.3D-панорамы 11

1.2.2.3D-экскурсии 12

Вывод по главе 1 14

2.СРАВНЕНИЕ И ИЗУЧЕНИЕ ИНСТРУМЕНТОВ ДЛЯ СОЗДАНИЯ 3D-ТУРОВ 15

2.1 Инструменты для создания 3D-моделей 15

2.1.1 Общая характеристика 15

2.1.2 Возможности программного обеспечения 16

2.1.3 Рендеринг и анимация 17

2.2. Игровые движки 17

2.2.1. Версии и кроссплатформенность 17

2.2.2. Скриптинг и редактор карт 18

2.2.3. Графический движок 19

Вывод по главе 2 20

3. РАЗРАБОТКА ВИРТУАЛЬНОЙ 3D-ЭКСКУРСИИ 22

3.1. Постановка задачи 22

3.1.1. Модель здания и модели других объектов 22


ВВЕДЕНИЕ


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

Существуют несколько подходов к созданию 3D-экскурсий. Первый подход - это создание экскурсий с помощью панорамной съемки. Этот подход помогает представить объект в реальной цветовой палитре и осмотреть все мелкие детали, однако он не дает ощущения присутствия, так как возможности действий крайне ограниченны. Второй подход - это создание 3D-экскурсии с помощью полноценной модели здания, с возможностью с помощью мышки и компьютера или очков виртуальной реальности полностью погрузиться в выстроенную «локацию». Этот подход не только дает большую свободу действий, но и позволяет смоделировать еще не существующий объект.

На рынке программного обеспечения по Республике Башкортостан данный подход пока не достаточно прижился, но уже сейчас существует несколько компаний, которые реализуют 3D-экскурсии пользуясь первым подходом (панорамная съёмка). В роли заказчика чаще всего выступают строительные различные магазины, торговые центры, музеи, выставочные центры и достопримечательности, которым необходимо продемонстрировать потенциальным покупателям. Но, так как виртуальный тур является эффективным инструментом маркетинга, позволяющим показать потенциальному потребителю товар, услугу или достопримечательность особым образом, стоит отметить необходимость применения 3D-туров и в других сферах деятельности, например, в сфере образования.

Кафедра прикладной математики и информационных технологий естественно-математического факультета Сибайского института (филиал) Башкирского государственного университета занимает лидирующее место по подготовке в сфере разработки программного обеспечения по республике Башкортостан и Башкирского Зауралья в частности , но с каждым годом проблема привлечения заинтересованных абитуриентов становится все острее. Стоит предположить, что представление Института с помощью 3D-тура позволит привлечь внимание не только школьников, желающих связать свое будущее с математикой и информационными технологиями, но и крупные предприятия и организации для сотрудничества. Для этого уже разработана 3D-экскурсия, основанная на использовании цилиндрических панорам, однако, как говорилось ранее, данный подход не является наиболее эффективным. Более того, реализация 3D-тура с помощью систем виртуальной реальности сможет показать нетривиальные возможности специалистов данного учебного заведения (СИ БашГУ). Именно поэтому проблема представления естественно-математического факультета Сибайского института Башкирского государственного университета в виде его 3D-модели является актуальной на данный момент. Это и определило тему выпускной квалификационной работы как разработка 3D-экскурсии по ЕМФ СИ (филиал) БашГУ.

Целью данной работы является создание 3D-тура по естественно-математическому факультету. Для достижения поставленной цели необходимо выполнить следующие задачи:

- изучение подходов и возможных инструментов для разработки 3D-экскурсии;

- сравнительная характеристика инструментов для разработки 3D-тура;

- моделирование здания СИ (филиал) БашГУ корпус Б (естественно-математический факультет);

- разработка приложения «3D-экскурсия по ЕМФ СИ (филиал) БашГУ» в Unity 3D.

  1. ПОДХОДЫ И ТЕХНОЛОГИИ ДЛЯ РАЗРАБОТКИ 3D-ЭКСКУРСИЙ


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


    1. Компьютерная графика


Компьютерная (машинная) графика - это наука, изучающая способы формирования и обработки изображений с помощью компьютера, которая является одним из разделов информатики. Компьютерная графика в информатики считается относительно новым направлением, она существует около 50 лет. Направление берет свое начало в 1960-х годах, но ее активное развитие пришлось на 1980-е года. Первым математическим и алгоритмическим проблемам компьютерной графики посвящены труды Д.Роджерса «Математические основы машинной графики». В своей работе автор описывает прикладные математические основы компьютерной графики, так как, по мнению автора, уделяется недостаточно внимания именно прикладным проблемам, а это влечет за собой дефицит информации, которую можно было бы использовать при создании действительно работоспособных систем машинной графики. Более того, автор полагает, что главным требованием к разработке систем компьютерной графики является необходимость фундаментального понимания связи ее практических аспектов со спецификой каждого конкретного приложения [8].

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

      1. Двумерная графика


Наиболее часто понятие компьютерной графики связывают с программами, предназначенными для работы с двухмерными цифровыми изображениями. Данное программное обеспечение, в свою очередь, по принципу действия можно разделить на три группы: растровая графика, векторная графика [2].

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

      1. Трехмерная графика


Главным отличием трехмерного изображения на плоскости от двухмерного является то, что трехмерное изображение включает построение геометрической проекции модели сцены на плоскость. Данная возможность предоставляется различными математическими алгоритмами, на основе которых разработаны специализированные программы для работы с трехмерной графикой. Однако с появлением 3D-дисплеев и 3D-принтеров трехмерная графика в отдельных случаях может не включать в себя проецирование на плоскость. Более того, трехмерная графика позволяет моделировать не только объекты реального мира (дома, астероиды, ураганы и т.д.), но и полностью абстрактные, как, например, проекция четырехмерного фрактала [8].

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

1.2 Моделирование в компьютерной графике


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

За возможностями 3D-графики стоит серьезный математический аппарат, реализованный в ядре графической системы и производящий трехмерные изображения. В 1960-х годах в университете города Юты (США) Иваном Сазерлендом и Дэвидом Эвансом было разработано фундаментальное математическое обеспечение, которое описывало проектирование компьютерной модели реальных объектов, а также алгоритмы, связанные с просчетом освещения 3D-сцен – областей виртуального пространства, содержащих трехмерные объекты и источники света. Но основной проблемой для самих разработчиков и пользователей системы стало то, что на тот момент аппаратное обеспечение не могло обеспечить нужных производительных мощностей.

Джим Блинн и Би Тюн Фонг, последователи Сазерленда и Эванса Эд Катмулла, являющиеся студентами той же кафедры компьютерной графики в Юте, начиная с середины 1970-х годов продолжили развивать технологии, позволяющие работать с трехмерной графикой и анимацией. Развитие мощнейшей технологии, которая коренным образом представление компьютерной графики, стали проведенные в этот период фундаментальные исследования. Результаты исследований и разработок того времени используются и в настоящее время. Например, при визуализации используются материал Blinn, созданный Джимом Блинном, и модель освещения Phong Shading, разработанную Би Тюн Фонгом на основе расчета интенсивности света в каждой точке поверхности объекта. Со временем произошло усложнение создаваемых форм: наряду с геометрическими примитивами, такими как куб, сфера, тор и другими, появилась возможность не только их комбинирования, но и возможность поверхностного моделирования. При поверхностном моделировании создаваемая модель формируется из конечного числа полигонов, которые чаще всего представляются треугольниками, из которых составляется поверхность. Данный подход не только облегчил создание сложных моделей, но также открыл возможность создавать модели практически любой формы, включая, например, возможность моделирования живых организмов: растений, животных, людей. Но трудность заключалась не только в представлении сложных объектов, но, что являлось более важным, в их реалистичности. Трудность оставалась нерешённой, так как помимо математической модели моделируемого объекта, требовалось так и его реалистичное визуальное представление. Здесь, в свою очередь, внесли свой вклад ученые физики, изучающие оптику и различные формы излучения. Результаты их работ, касающиеся преломления, отражения, поглощения световых лучей, были положены в основу различных методов визуализации.

Существенное увеличение производительных мощностей персональных компьютеров в начале 1990-х годов стало толчком к развитию недорогого программного обеспечения для трехмерного моделирования. Это позволило иметь доступ к созданию 3D-моделей не только научным деятелям, разработчикам и кинематографистам, имеющим доступ к мощным графическим станциям, но и простым пользователям. Легкость в освоении и относительно небольшие требования к аппаратному обеспечению, так и почти неограниченные возможности трехмерного моделирования, обеспечило огромную популярность и скорое распространение таких систем. Формирование графических библиотек во многом способствовала увеличивающейся популярности разработки 3D-приложений. Но, кроме программного обеспечения широкого спектра применения (например, 3ds Max, Maya), появляются фирмы разрабатывающие узконаправленные модули. Так, например, “легкие” и простые в освоении инженерные трехмерные редакторы, как SolidWorks, Solid Edge, Inventor, составляют конкуренцию серьезным компаниям, занимающимся разработкой программ для инженерного моделирования (CATIA, Unigraphics, Pro/ENGINEER).

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

Графические CAD-системы (Computer Aided Design - полуавтоматическое компьютерное проектирование) являются одним из наиболее используемых видов программных средств инженерного проектирования. Они позволяют создавать 3D-модели для производства машиностроительных комплексов, изделий, а также формировать комплекты чертежей вместе с полным набором конструкторской документации, необходимой для выпуска изделия или построения объекта.

Другим классом инженерных систем проектирования являются CAE-системы (Computer Aided Engineering - автоматизированные инженерные расчеты), которые позволяют не только визуально отображать трехмерную модель, но и проводить различные инженерные расчеты. Это позволило значительно облегчить работу инженеров-конструкторов тем, что данное программное обеспечение позволяет получать различные представления, распределения температур по объему, модели потоков жидкостей и газов, что позволяет значительно точнее описать объект.

      1. Полигональное моделирование


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

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

В процессе 3D-моделирования действия производятся над вышеуказанными составляющими. Для моделирования объекта существует возможность менять масштаб и форму, вращать, объединять, делить и применять другие операции к подобъектам полигональной сетки.

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

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

      1. Сплайновое моделирование


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

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

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

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

Относительно недавно начали говорить о новом виде моделирования ­ NURBS-моделировании, которое в свою очередь всего лишь частным случаем сплайнового моделирования. NURBS, что расшифровывается как “Non-Uniform Rational B-Spline”, является технологией неоднородных рациональных В-сплайнов.

Кривые NURBS, которые используются для трехмерного моделирования обычно подразделяют на два типа, а именно Р (Point) кривые и CV (Control Vertex) кривые. Кривые Point находятся непосредственно на линии или объекте и управление ими происходит с помощью вершин. В свою очередь, кривые Control Vertex управляются точками, лежащими за пределами объекта или линии, и представляют собой подобие кривой Безье.

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

    1. 3D-экскурсии


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

      1. 3D-панорамы


Панорамные 3D-туры появились не так давно. В конце ХХ века немецкий ученый Хельмут Дерш создал и представил миру первую математическую модель представления сферы на плоскости с учетом яркостных колебаний и геометрии объективов, что и стало прообразом современных 3D-панорам, популярность и распространение которых растет с каждым годом.

Технологии создания 3D-панорам предоставляют возможность при помощи определенного числа фотографий конкретного объекта получать не просто панорамы в 180 градусов угла обзора, а реального обзора трехмерной модели в 360 градусов, которая дает возможность просмотра объекта с различных углов обзора и вращения в различных направлениях [3].На рынке данный подход уже около десяти лет является наиболее популярным способом создания 3D-туров. Виртуальные 3D-панорамы памятных мест, музеев, городских, да и не только городских, пейзажей, площадей и других мест и помещений уже пользуются большой популярностью уже не только в западных странах, но и в России. Виртуальные 3D-панорамы предоставляют объемное изображение объекта, создавая образ реального объекта. Управление позволяет в соответствии со своим пожеланием перемещаться, отдалить или приблизить интересующий предмет, почитать информацию о каком-либо интересующем объекте, развернуть картинку под нужным углом. Подобная интерактивность виртуальных панорам позволяет более объективно оценить окружающее пространство и создает эффект присутствия, чем просмотр обычных фотографий или видео.

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

      1. 3D-экскурсии


Сегодня 3D-моделирование является неотъемлемой частью науки, производства и образования. Создание 3D-туров на основе моделирования объекта только начинает свое распространение на рынке Тюменской области. На данный момент существуют три основные стратегии создания 3Dмоделей зданий: ручное создание моделей, автоматическое и полуавтоматическое.

Создание моделей выполняется автоматически с помощью 3D-сканеров, которые представляют собой специальные устройства, которые производят анализ определенных физических объектов или пространство, чтобы получить данные о форме предмета и, по возможности, о его внешнем виде (например, о цвете.). Собранные сканером данные в дальнейшем применяются для создания цифровой трехмерной модели этого объекта. Бесспорными преимуществами данной способа являются высокая скорость создания моделей и при этом низкая стоимость, что достигается благодаря полностью автоматизированному процессу моделирования. Однако и недостатки данного подхода являются крайне значимыми. Так как алгоритмы автоматического восстановления формы объектов по их фотоснимкам или данным лазерного сканирования, несмотря на значительные успехи в этой области, все еще несовершенны, не достигается достаточная геометрическая точность. Как следствие этого, фигуры зданий восстанавливаются с ошибками, порой довольно грубыми. Вертикальные стены могут оказаться сильно наклоненными, размеры зданий значительно искажаются. Данный факт исключает возможность проведения точных измерений (точность которых соизмерима с точностью исходных данных), по автоматически сгенерированным моделям. Более того, автоматическое распознавание в настоящее время неспособно надежно проводить классификацию объектов и надежно определять их границы, что приводит к невозможности отделить объекты от поверхности рельефа или друг от друга. Это усложняет создание адресной базы данных и ограничивает применение модели. Например, для расчета зашумленности требуется классификация объектов по типу материала, из которого они состоят, что невозможно сделать, при отсутствии отдельных объектов.

Ручное создание моделей в программах трехмерного моделирования является самым трудоемким способом, но предоставляет возможность создания моделей с очень высокой геометрической детализацией. Более того, данная стратегия позволяет значительно сэкономить память, так как текстуры не содержат изображений посторонних объектов, спроецированных на стены и пол. Кроме того, ручное создание объекта позволяет каждому объекту ассоциировать любую атрибутивную информацию. Модели зданий создаются в таких программах, как AutoCAD, ArchiCAD, ArcGIS+3DAnalyst, 3ds Max, Blender или Google SketchUp. Вручную проводятся моделирование геометрии и текстурированные моделей. В рамках данной выпускной квалификационной работы данная стратегия является наиболее оправданной, исходя из того, что требуется не только создание статичной 3D-модели здания, но и предоставление дополнительного функционала для работы с ней.

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

В настоящее время понятия игрового и графического движка пересекаются, так как крупные платформы, такие как Unity 3D, Unreal Engine, Blender Game Engine, предоставляют возможности как для описания игровой логики, так и для создания продвинутого графического интерфейса. Для данной выпускной квалификационной работы, в результате рассмотрения возможностей и функционала, был выбран игровой движок Unity 3D.

Вывод по главе 1


На основе изученного материала можно сделать вывод, что компьютерная графика является активно развивающейся наукой и имеет серьезный математический и алгоритмический аппарат, на основе которого разработан широкий спектр программных приложений, которые помогают развивать данную область. На сегодняшний день современное программное обеспечение позволяет не только приблизительно моделировать простые объекты, но и описывать сложные объекты, моделировать процессы и выстраивать взаимосвязи между объектами.
  1. СРАВНЕНИЕ И ИЗУЧЕНИЕ ИНСТРУМЕНТОВ ДЛЯ СОЗДАНИЯ 3D-ТУРОВ



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


2.1 Инструменты для создания 3D-моделей


Для того, чтобы заниматься разработкой 3D-экскурсий, прежде всего необходимо освоить 3D-моделирование на достойном уровне. Существует широкий выбор программ для 3D-моделирования и анимации, но не все они имеют одинаковые характеристики. Для реализации приложения по теме данной выпускной квалификационной работы необходимо выбрать программное обеспечение для создания трехмерных моделей. Было решено провести сравнительную характеристику двух лидирующих на рынке и активно конкурирующих программ для трехмерного моделирования, а именно - Autodesk 3ds max и Blender 3D.

2.1.1 Общая характеристика


Сегодня приложения Autodesk 3ds max и Blender 3D являются основными конкурентами среди программ трехмерного моделирования. В самом начале необходимо отметить, что, возможно, самым основным различием между данными программами является то, что программное обеспечение Blender 3D является абсолютно бесплатным, в то время как цена на Autodesk 3ds max стартует от двадцати четырех тысяч рублей. Также немаловажным является то, что программа Autodesk 3ds max реализована только под операционную систему Windows, в то время как Blender 3D не накладывает таких строгих ограничений на используемую операционную систему - существуют версии для Windows, Linux и Mac OS. Также стоит заметить, что версии программного обеспечения Blender 3D переведены на множество языков, а версии Autodesk 3ds max переведены только на английский и французский.

Еще одним значительным преимуществом Blender 3D перед Autodesk 3ds max является то, что у Blender 3D существует сообщество разработчиков, что обеспечивает поддержку простым некоммерческим пользователям. Но, в то же время, интерфейс программы Blender 3D не является интуитивно понятным, в отличие от Autodesk 3ds max, но это является достаточно субъективным достоинством.

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

2.1.2 Возможности программного обеспечения



Безусловно, Autodesk 3ds max уже давно является классикой 3Dмоделирования и имеет огромные возможности, но, несмотря на это, его достаточно молодой конкурент отстает незначительно, а в чем-то даже превосходит его.

Нельзя не отметить, что программный продукт Autodesk имеет значительно более удобные и сильные инструменты для моделирования и модификации сложных объектов, но при этом в Blender, после освоения интерфейса и управления, данный процесс кажется менее запутанным. Более того, в Autodesk 3ds max полностью отсутствуют инструменты для рисования, в то время как в Blender они есть, хотя и недостаточно сильные.

С точки зрения создания органических объектов складывается достаточно спорная ситуация, так как в Autodesk 3ds max существуют серьезные инструменты для создания, например, трехмерных моделей человека, а в Blendeer 3D более продуман процесс анимации созданных персонажей. В то же время, UV-проектирование значительно больше развито в Blender, что является серьезным преимуществом. UV-развертки позволяют создавать сложнотекстурированные объекты, как, например, лицо человека или поврежденный автомобиль. В данных ситуациях возможности процедурных текстур ограничены, в то время как при помощи развёртки можно назначить текстуру каждому полигону. Для значительного числа простых 3D-объектов Blender имеет автоматический набор алгоритмов развертки, но также для сложных объектов существует возможность спроектировать развертку с помощью технологии швов.

Уникальной технологией в Blender 3D является технология скульптинга. Данная технология позволяет работать над детализацией более продуктивно, так как не просто позволяет обеспечить безопасность откатов полигонального разбиения, но и производить разбиение и детализацию только на части объекта, не подвергая риску весь объект и сохраняя производительную мощность.

2.1.3 Рендеринг и анимация


Рендеринг является одной из основополагающих технологий для 3Dмоделтирования, так как от данного процесса напрямую зависит реалистичность создаваемой модели. Как в Blender 3D, так и в Autodesk 3ds max качество рендеринга организовано на очень высоком уровне, и возможности рендеринга в данных программных продуктах почти идентичны. Единственным отличием является то, что в функционале Blender 3D используются такие интересные технологии, как 3D Stereoscopy и Global Illumination. Данные технологии позволяют не только улучшить качество представления 3D-модели, но и значительно повысить реалистичность объекта.

Обращаясь к анимации объекта, необходимо отметить, что, несмотря на то, что Blender 3D является некоммерческим приложением, он значительно превосходит Autodesk 3ds max в функционале создания анимации. Более того, Blender позволяет анимировать текучесть и передвижение нетвердых материалов, таких как вода, газ и других.

2.2. Игровые движки


Для сравнительной характеристики были выбраны два наиболее популярных игровых графических движка Unity и UDK. Далее будут описаны преимущества и недостатки каждого из них в сравнении.

2.2.1. Версии и кроссплатформенность


Unity имеет две версии: бесплатная и платная (1500$). Эти версии отличаются лишь количеством возможностей. Обе версии можно продавать, также существует возможность зарабатывать деньги без дополнительных вложений. Также у Unity существует сервис поддержки разработчиков UNION. Для работы с сервисом поддержки необходимо создать учетную запись UNION, отправить исходники проекта, а квалифицированные кадры смогут помочь вам портировать ваш проект на всевозможные платформы и разместить ваше приложение на разных сайтах. Важным замечанием является то, что при получении прибыли от этого 80% денежных средств остаются у разработчика (UNION работает как с платной, так и с бесплатной версиями).

Платформа UDK в этом конкретном аспекте сравнения значительно уступает, так как UDK бесплатна только для некоммерческого использования. Более того, при продаже вашего приложения, в случае если прибыль составит более, чем 50000$, существует обязанность выплачивать 25% с каждой продажи EPIC'ам.

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

    • Android;

    • iOS;

    • Blackberry;

    • Windows XP/ Vista/ 7;

    • macOS;

    • Wii;

    • Playstation 3;

    • Xbox;

    • Собственный браузерный плагин Unity Web Player.

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

Список платформ для разработки UDK гораздо скромнее, но захватывает основные самые популярные платформы:

    • iOS;

    • macOS;

    • Windows XP/ Vista/ 7.


2.2.2. Скриптинг и редактор карт


Unity создал собственную среду разработки адаптированную именно для разработки под Unity 3D – MonoDevelop. Данную среду можно запустить напрямую из Unity, но, кроме того, в Unity 3D реализована поддержка сторонних редакторов кода. Также существует поддержка C# и JS.

Компания UDK также имеет собственный редактор кода - UnrealScript. Первое, что может вызвать вопросы - это система наследования классов. В UDK существуют родительские и дочерние классы, последние просто расширяют функционал родителей. Цепочки «родитель-ребенок» часто насчитывают 3-4 «поколения». На практике, чтобы понять, что означает переменная в каком-либо классе, требуется просмотреть большое количество кода родительских классов, причем эти классы расположены по разным папкам. Для упрощения и без того нелёгкого процесса написания приложений даже существуют отдельные программы, которые занимаются «расследованием» наследственных связей UDK-классов. Код компилируется либо вручную отдельной утилитой, либо при перезапуске редактора.

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

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

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

2.2.3. Графический движок


В платной версии Unity имеются все технологии, которые требует AAA игровое приложение: постпроцессинг, низкоуровневый доступ к рендеру (в скриптах появляется возможность обращаться к openGL), тени в реальном времени, запекание света (в том числе GI) и др. В бесплатной же версии графическая составляющая движка сильно урезана: нет ни теней в реальном времени, ни постароцессинга, запекание света есть, но GI отсутствует (см. рис. 1).



Рис. 1 Графика в Unity

UDK в данном плане не имеет конкурентов. Графический движок – это главное и значительное преимущество UDK (см. рис. 2).



Рис. 2 Графика в UDK

Вывод по главе 2


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

3. РАЗРАБОТКА ВИРТУАЛЬНОЙ 3D-ЭКСКУРСИИ



3.1. Постановка задачи


Была поставлена задача разработки приложения для проведения 3D-экскурсии по естественно-математическому факультету Сибайского института (филиала) Башкирского государственного университета с использованием 3D-моделирования на игровом движке Unity 3D.

Работу над приложением можно условно подразделить на следующие этапы:

  • моделирование на Blender 3D;

  • импорт моделей в Unity 3D;

  • организация сцены и расположение коллайдеров;

  • организация взаимодействия, путем написания скриптов на C#.

В рамках поставленной задачи было создано приложение для проведения 3D-экскурсии по естественно-математическому факультету Сибайского института (филиала) Башкирского государственного университета на основе 3D- моделирования здания фкультета. Программа разработана для получения возможности проведения интерактивных экскурсий для получения информации об институте.

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

  1. модель здания корпуса;

  2. модели объектов экстерьера и интерьера;

  3. контроллер передвижения;

  4. скрипты, описывающие анимацию;


3.1.1. Модель здания и модели других объектов


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



Рис. 3 План первого этажа корпуса Б (Белова, 21)

На основе данного плана была смоделирована модель второго этажа здания Института математики и компьютерных наук с использованием инструментария, предоставляемого программным обеспечением Blender 3D (рис. 4).



Рис. 4. Модель первого этажа корпуса Б (Белова, 21)

На следующем этапе работы было проведено трехмерное моделирование объектов интерьера и экстерьера Института математики и компьютерных наук и текстурирование всех созданных объектов. Все созданные объекты были экспортированы в формат .FBX и импортированы в игровой движок.


написать администратору сайта