Кравець А. М. Система для проведення екскурсій у віртуальній та доповненій реальності // Міжнародний науковий журнал "Інтернаука". — 2019. — №10.
Технічні науки
УДК 004.4
Кравець Анастасія Михайлівна
студент
Національного технічного університету України
«Київський політехнічний інститут імені Ігоря Сікорського»
Кравец Анастасия Михайловна
студент
Национального технического университета Украины
«Киевский политехнический институт имени Игоря Сикорского»
Kravets Anastasiia
Student of the
National Technical University of Ukraine
«Igor Sikorsky Kyiv Polytechnic Institute»
Науковий керівник:
Сімоненко Валерій Павлович
доктор технічних наук,
професор кафедри обчислювальної техніки
Національний технічний університет України
"Київський політехнічний інститут імені Ігоря Сікорського"
СИСТЕМА ДЛЯ ПРОВЕДЕННЯ ЕКСКУРСІЙ У ВІРТУАЛЬНІЙ ТА ДОПОВНЕНІЙ РЕАЛЬНОСТІ
СИСТЕМА ДЛЯ ПРОВЕДЕНИЯ ЭКСКУРСИЙ В ВИРТУАЛЬНОЙ И ДОПОЛНЕННОЙ РЕАЛЬНОСТИ
SYSTEM FOR CONDUCTING EXCURSIONS IN VIRTUAL AND AUGMENTED REALITY
Анотація. В статті розглянуто розробку системи для проведення екскурсій у віртуальній та доповненій реальності. Для програмування серверної частини системи використовувався фреймворк Laravel та мова PHP. Основною платформою для створення клієнтської частини програми став A-Frame, мова програмування Javascript. Обґрунтовано вибір архітектури системи. Наведено плюси та мінуси розробленого програмного забезпечення.
Ключові слова: віртуальна реальність, доповнена реальність, екскурсія, PHP, Laravel, A-Frame, Javascript, MVC.
Аннотация. В статье рассмотрено разработку системы для проведения экскурсий в виртуальной и дополненной реальности. Для программирования серверной части системы использовался фреймворк Laravel и язык PHP. Основной платформой для создания клиентской части программы стал A-Frame, язык программирования Javascript. Обоснован выбор архитектуры системы. Приведены плюсы и минусы разработанного программного обеспечения.
Ключевые слова: виртуальная реальность, дополненная реальность, экскурсия, PHP, Laravel, A-Frame, Javascript, MVC.
Summary. The article describes the development of a system for conducting excursions in virtual and augmented reality. To develop the server part of the system, the Laravel framework and the PHP programming language were used. The main platform for creating the client part of the program was A-Frame and the programming language Javascript. The choice of the architecture of the system is substantiated. The pros and cons of the software developed are presented.
Key words: virtual reality, augmented reality, excursion, PHP, Laravel, A-Frame, Javascript, MVC.
Постановка проблеми. Актуальною проблемою є популяризація пам’яток історії та культури. Рушійною силою в даному питанні виступають сучасні інформаційно-рекламні засоби, в тому числі і подорожі в доповненій чи віртуальній реальності. Саме новітні технології здатні привернути увагу молоді до культурного аспекту розвитку нації.
Перед сучасним суспільством стоїть задача винайдення на створення ефективних систем для проведення екскурсій у віртуальній та доповненій реальності, і поширення та впровадження цих систем у всі категорії населення.
Аналіз останніх досліджень і публікацій. Програмування на PHP досліджували Chris Scollo та Sasсha Shumann [1], архітектурний паттерн MVC розглядав Chris Pitt [2]. Основи налаштування і використання A-Frame наведені у книзі Gunkel, Simon, et al. [3]. Можливості фреймворку Laravel описав Martin Bean [4]. Можливості віртуальної реальності у веб застосунках зазначили Zhang, Mengxin, et al. [5].
Мета дослідження: створення системи для проведення екскурсій у віртуальній та доповненій реальності, що дозволяє користувачам створювати, редагувати, переглядати та видаляти екскурсії; поєднувати віртуальну та доповнену реальність в одній екскурсії.
Виклад основного матеріалу. В проекті було розроблено систему для проведення екскурсій у віртуальній та доповненій реальності, а саме перегляд та створення точок екскурсій, їх комбінування. Кожна екскурсія складається з деякої множини точок екскурсій. Вони можуть представляти як доповнену реальність, так і віртуальну. Всі точки зв’язані між собою “порталами”, що забезпечує користувачу плавний перехід з однієї локації на іншу. Розроблена система дозволяє створити особистий кабінет користувача, додавати нові екскурсії та редагувати ті, що вже існують, переглядати свої та публічні екскурсії.
Система є веб-додатком, що надає їй чимало плюсів. По перше, на відміну від програм, які написані для виконання на конкретних операційних системах, вона не вимагає встановлення. По-друге, користувач не потребує жодних додаткових пристроїв, окрім смартфону та доступу в інтернет. Окрім цього, системи такого типу є найбільш архітектурно зручними для вирішення поставленої задачі.
Система була створена на основі мови PHP з використанням фреймворку Laravel. В основі архітектури додатку лежить шаблон MVC — Модель — Представлення — Контролер.
У загальній структурі «Модель» є мостом між компонентами «Представлення» і «Контролер». Єдине завдання «Моделі» - обробка даних в постійному сховищі, пошук і підготовка даних, які будуть передані іншим складовим MVC. В даній роботі всі моделі є нащадками класу Model фреймворку Laravel.
Представлення - це частина системи, в якій даними, отриманими від «Моделі», задається остаточний вигляд для користувача. У cистемі поєднано як традиційне використання HTML, так і фреймворк A-Frame, який дозволяє створювати точки екскурсій у віртуальній та доповненій реальності. Для відображення панелі керування екскурсіями використовується технологія blades, вбудована в платформу Laravel.
Завдання Контролеру полягає в обробці даних, які користувач вводить, і оновленні «Моделі». Це єдина частина схеми, для якої необхідна взаємодія користувача.
Описана вище архітектура наведена на рис. 1.
Рис. 1. Архітектура системи
Для збереження даних була обрана реляційно-об’єктна модель представлення, а саме Eloquent ORM. Це дозволило спростити та пришвидшити процес розробки програмного забезпечення. Доступ до бази даних здійснювався з шару представлення даних архітектури MVC.
Не менш важливою частини бази даних є таблиця міграцій. Вона необхідна для відслідковування змін в таблицях, відповідальних за екскурсії та користувачів. Використовуючи командний інтерфейс Artisan (наданий Laravel), можна оновлювати або проводити заміну бази на аналогічну заданій, не зазнаючи ніяких втрат функціоналу, а всі зміни будуть записані у відповідну таблицю. Це надає можливість контролю версій даних, збережених у системі.
Для авторизації, реєстрації та відновлення доступу до системи було створено окремий модуль системи.
Висновки. Архітектура розробленої системи була обрана та спроектована вірно — всі компоненти системи є легконалагоджуваними, система легко здатна розширювати можливості функціоналу. Незначним недоліком розробленої системи можна визначити необхідність доступу до мережі Інтернет, відсутність можливості експорту екскурсій.
Мова програмування PHP та фреймворк Laravel забезпечили просту та зрозумілу програмну реалізацію спроектованої системи у рамках об’єктно-орієнтованого програмування. Система є відмовостійкою і готовою до використання.
Література