Научная статья на тему 'РАЗРАБОТКА БАЗОВОЙ МОДЕЛИ ДЛЯ ВИРТУАЛЬНОЙ ЭКСКУРСИИ ПО ГОРОДУ НОВОСИБИРСКУ В СРЕДЕ UNREAL ENGINE'

РАЗРАБОТКА БАЗОВОЙ МОДЕЛИ ДЛЯ ВИРТУАЛЬНОЙ ЭКСКУРСИИ ПО ГОРОДУ НОВОСИБИРСКУ В СРЕДЕ UNREAL ENGINE Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
193
34
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БАЗОВАЯ МОДЕЛЬ / ВИРТУАЛЬНАЯ ЭКСКУРСИЯ / МОДЕЛЬ РЕЛЬЕФА / UNREAL ENGINE / ТРЕХМЕРНАЯ ГРАФИК

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Попов Александр Анатольевич, Бугаков Петр Юрьевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Попов Александр Анатольевич, Бугаков Петр Юрьевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DEVELOPMENT OF A BASIC MODEL FOR A VIRTUAL TOUR AROUND NOVOSIBIRSK IN UNREAL ENGINE

The article presents the process of developing a basic model for a virtual tour in the Unreal Engine environment. The basic model covers the territory of the city of Novosibirsk, contains all the necessary algorithms for building a virtual tour. The analysis of existing developments is carried out, the programs with which the model is created are selected. The steps of creating the model and its individual components are also described.

Текст научной работы на тему «РАЗРАБОТКА БАЗОВОЙ МОДЕЛИ ДЛЯ ВИРТУАЛЬНОЙ ЭКСКУРСИИ ПО ГОРОДУ НОВОСИБИРСКУ В СРЕДЕ UNREAL ENGINE»

УДК 004.92

РАЗРАБОТКА БАЗОВОЙ МОДЕЛИ ДЛЯ ВИРТУАЛЬНОЙ ЭКСКУРСИИ ПО ГОРОДУ НОВОСИБИРСКУ В СРЕДЕ UNREAL ENGINE

Александр Анатольевич Попов

Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, обучающийся, тел. (913)954-67-21, e-mail: sashapopov9999@gmail.com

Пётр Юрьевич Бугаков

Сибирский государственный университет геосистем и технологий, 630108, Россия, г. Новосибирск, ул. Плахотного, 10, кандидат технических наук, доцент кафедры картографии и геоинформатики, тел. (383)343-18-53, e-mail: peter-bugakov@yandex.ru

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

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

Ключевые слова: базовая модель, виртуальная экскурсия, модель рельефа, Unreal Engine, трехмерная графика

DEVELOPMENT OF A BASIC MODEL FOR A VIRTUAL TOUR AROUND NOVOSIBIRSK IN UNREAL ENGINE

Alexandr A. Popov

Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Student, phone: (913)954-67-21, e-mail: sashapopov9999@gmail.com

Peter Yu. Bugakov

Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Ph. D., Associate Professor, Department of cartography and Geoinformatics, phone: (383)343-18-53, e-mail: peter-bugakov@yandex.ru

The article presents the process of developing a basic model for a virtual tour in the Unreal Engine environment. The basic model covers the territory of the city of Novosibirsk, contains all the necessary algorithms for building a virtual tour.

The analysis of existing developments is carried out, the programs with which the model is created are selected. The steps of creating the model and its individual components are also described.

Keywords: basic model, virtual tour, relief model, Unreal Engine, three-dimensional graphics

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

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

Целью данного проекта является создание базовой модели для виртуальной экскурсии по городу Новосибирску в среде Unreal Engine. Результат разработки представляет собой приложение для настольных компьютеров, реализующее трехмерную сцену, которая охватывает всю территорию города и позволяет добавлять в себя новые модели объектов городской среды.

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

Этапы разработки приложения включают:

- обзор существующих разработок;

- выбор необходимых инструментальных средств;

- создание карты высот Новосибирска в программе microdem;

- создание рельефа Новосибирска в Unreal Engine;

- реализация механики движения на языке BluePrint;

- создание меню программы;

- создание моделей в Blender;

- добавление моделей зданий на карту;

- подключение базы данных для хранения семантической информации об объектах.

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

- Google maps;

- Yandex карты;

- AirPano («АирПано»);

- MirCyber.

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

Программный продукт MirCyber предоставляет пользователю трехмерную карта Новосибирска (рис. 1). Основной недостаткам данного проекта можно отнести отсутствие обновлений с 2008 г, отсутствие реалистичного рельефа территории г. Новосибирска, а также низкополигональные модели зданий. Из достоинств хотелось бы отметить информативность, достоверность, а также интуитивно понятное управление [1].

Рис. 1. Программа MirCyber

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

В качестве основной среды разработки был выбран Unreal Engine. Unreal Engine 4 используется язык программирования C++, а также имеется довольно простой и наглядный язык программирования BluePrint [2].

В качестве основной СУБД для проекта был выбран mySQL, поскольку имеет большое количество преимуществ, а именно: многопоточность, автоматическая оптимизация связей, быстрая работа, масштабируемость, а также она является бесплатной в большинстве случаев.

Для создания 3D моделей будет использоваться Blender. Blender - это бесплатная программа, которая имеет широкий инструментарий для создания полноценных моделей задний и другого окружения [3].

Помимо этого, для обработки битовой модели рельефа местности в подходящий формат для дальнейшего использования в редакторах трехмерной графики понадобится программа MICRODEM. Она написана профессором Питером Гутом из отдела океанографии, Военно-морской академии США для картографирования микрокомпьютеров. В данной разработке MICRODEM используется для отображения и объединения цифровых моделей рельефа, спутниковых снимков, отсканированных карт [4].

Также будет использоваться ресурс SRTM Data. CGIAR-CSI GeoPortal может предоставить SRTM 90-метровые цифровые данные о высоте по всему миру [5].

Далее необходимо было подготовить карту высот города Новосибирска для внедрения ее в проект. Для этого необходимо было взять исходные данные с сайта http://srtm.csi.cgiar.org/srtmdata/ и преобразовать их в программе microdem [6]. После чего на выходе формируется черно-белое изображение высот города (рис. 2).

Рис. 2. Растровая карта высот

После создания карты высот необходимо перенести растровое изображение карты в трехмерную модель рельефа с помощью инструмента Landspace в программе Unreal Engine. При этом на модель рельефа местности накладывается текстура, созданная на основе растровой карты города Новосибирска (рис. 3).

1

Рис. 3. Модель рельефа местности 149

Следующий этап посвящен добавлению механики движения наблюдателя с помощью языка BluePrint. Помимо механики движения таким же образом добавляются виджеты интерфейса для большей информативности [7]. Графическая схема программы показана на рис. 4 и 5.

+ Person > Event Graph

Рис. 4. Механика движения, реализованная на языке BluePrint

Рис. 5. Реализация пользовательского интерфейса на языке BluePrint

Для создания меню необходимо в Content browser создать два виджета: один - для основного меню, второй - для меню паузы. После необходимо добавить элементы управления в BluePrint [8]. Общий вид меню и его реализация на языке BluePrint показаны на рис. 6.

Рис. 6. Основное меню

Для создания меню паузы, также добавляем элементы и переходим в В1иеРпП для настройки кнопок. Подключения меню паузы на уровень с картой осуществляется в В1иеРпП путем добавления элементов, которые позволят вызывать меню паузы нажатием на клавишу «Р» [9].

На последнем этапе на карту добавляются модели зданий, а также подключается база данных для отображения семантической информации о наблюдаемом объекте [10]. При наведении указателя мыши на объект в окне появится информация о нем (рис. 7).

/ /

UGHT1NG NEEDS ТО BE REBUILT (47S#lblil! objects}

ЯиДИИМВМШУЙШЗЖ (

Тип house Описание

5 этажный панельный дом

Рис. 7. Реализация интерфейса с панелью информации

151

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

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

1. Sibnet [Электронный ресурс] // soft.sibnet.ru - Режим доступа: https://soft.sibnet.ru/soft/ 5855-mircyber-2-05-3b/

2. Unreal Engine [Электронный ресурс] // unrealengine.com - Режим доступа: https://docs.unrealengine.com/en-US/index.html

3. JUUNIOR [Электронный ресурс] // junior3d.ru - Режим доступа: https://junior3d.ru/ar-ticle/blender-3d.html

4. Lostapp [Электронный ресурс] // lostapp.ru - Режим доступа: http://lostapp.ru/soft/mi-crodem#:~:text=MICRODEM%20-%20бесплатная%20программа%20картографирования%20 микрокомпьютеров,%2С%20Военно-морской%20академии%20США.

5. SRTM Data [Электронный ресурс] // SRTM Data - Режим доступа: http://srtm .csi.cgiar.org/

6. Как достать рельеф из Google Earth [Электронный ресурс] // andklv.narod.ru - Режим доступа: http://andklv.narod.ru/tut_mini/tutmini_21/topo_googleearth.html

7. Blueprint Interface // Документация по Unreal Engine - Режим доступа: https://docs.un-realengine.com/en-US/ProgrammingAndScripting/Blueprints/UserGuide/Types/Interface/in-dex.html#:~:text=A%20Blueprint%20Interface%20is%20a,be%20added%20to%20other%20Blue-prints.&text=This%20is%20essentially%20like%20the,accessed%20through%20a%20com-mon%20interface

9. Документация по Unreal Engine [Электронный ресурс] // UEngine.Ru - Режим доступа: https://uengine.ru/docs

8. Как сделать простое «главное меню» для игры в Unreal Engine 4 [Электронный ресурс] // Хабр - Режим доступа: https://habr.com/ru/post/334426/

10. Unreal Engine 4 Blueprint Line Trace - Линейная трассировка (подробно) [Электронный ресурс] - Режим доступа: https://www.youtube.com/watch?v=izTmJK_oFe4&t=278s&ab_ channe^Cyberstars-Каксоздатьигру.

© А. А. Попов, П. Ю. Бугаков, 2021

i Надоели баннеры? Вы всегда можете отключить рекламу.