Виртуальная и дополненная реальность глазами инженера

// 30 августа 2016 // Виртуальная и дополненная реальность, Программирование

Все почувствовали скорый приход новой эры виртуальной реальности, когда на экран впервые вышел фильм Газонокосильщик. Я пересматривал его десятки раз, предвкушая скорое наступление сингулярности, переход на новый уровень существования разума, переезд людей в виртуальность. Это было в 90-х годах. В то время ощущение виртуального пространства было еще непонятным.
После выхода нашумевшей кинокартины прошло больше 20 лет. И только сейчас виртуальная реальность начинает потихоньку раскрываться перед нами, когда на дворе уже 2016 год. И кого же благодарить за создание сего чудесного альтернативного мира? Конечно же, технарей.

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

Где будет полезна виртуальная реальность?

  • В медицине. Альтернативное пространство может использоваться в качестве тренировки будущего лечащего персонала. Это намного лучше, чем лекции с «деревянными» манекенами. Основной компонент, который повлияет на создание подобной платформы – комплекс специально разработанных программных продуктов.Еще одно направление для развития – консультации. Технологии VR позволят новоиспеченным хирургам в режиме реального времени задавать вопросы своим старшим коллегам буквально при проведении операции.
  • В образовательных учреждениях. Альтернативная реальность покажет ученикам и студентам мир, о котором повествует преподаватель. Станет проще посмотреть на химические реакции, увидеть вошедшие в историю события, изучить подробнее анатомию и молекулярную физику. Это только предположение о том, как может помочь виртуальная реальность. Перечислять можно до бесконечности. Занятия подобного рода позволят школьникам и студентам узнать больше и получить бесценный опыт. Новые технологии смогут заинтересовать учащихся. В школу и университет ребята будут идти с большим рвением и энтузиазмом, чем сейчас. Главное – посещать лекции смогут все. Даже те, кто находятся на другом конце земного шара или проживают в сельской местности. Это еще одна возможность качественного дистанционного обучения.
  • Для общения и передачи информации. Когда Цукерберг покупал в 2014 году шлем от Oculus, он явно рассматривал VR, как новые возможности для общения. В ближайшем будущем альтернативная реальность опередит технологии всех коммуникационных платформ. В т.ч. Skype и ему подобные. Теперь не придется просиживать в социальных сетях. С помощью виртуальной реальности станет возможным провести собрание в одном кабинете для сотрудников, находящихся в разных городах.
  • Виртуальная реальность и туризм. Здесь технологии VR помогут операторам привлечь больше клиентов, показывая, как чудесен тот или иной курорт. Кто собирается в путешествие сможет правильно спланировать поездку, оценив местность. Или совершить незабываемое виртуальное приключение в экзотическую страну. А может, и вовсе – на луну. Раскрывшиеся возможности станут намного реалистичнее, чем просмотр телевизионной программы.
  • Для игровой индустрии. С помощью виртуальной реальности геймеры смогут насладиться невероятным эффектом присутствия. Все уже знают, что игры – самый ожидаемый источник VR. Любители легких и незамысловатых развлечений скорее всего не оценят возможности альтернативных миров. А вот заядлые приверженцы более серьезных игр с нетерпением ждут появления этой новинки. Уже есть некоторые приложения, которые показывают нам VR. Из них, нашумевший Майнкрафт, проверенная временем вторая Халф-Лайф и воскресший DOOM.

Как это устроено?

VR девайсы делятся на 3 вида, начиная с «коробочек с линзой для смартов» – например, картонный CardBoard от Гугла и Gear VR от Самсунга. В эти шлемы помещаются телефоны. Дисплеи современных гаджетов имеют высокое качество. Это свойство обеспечивает реалистичное изображение, которое подается на оба глаза.

google-cardboard-gearvr
Шлемы второго типа подсоединяются к компу или игровым консолям. Самые знаменитые из них PlayStation VR и Oculus Rift. Эти устройства требуют для полноценной работы реализации сложных вычислительных алгоритмов. Машины, к которым они подсоединяются, должны обладать высокой мощностью и сильной видеокартой. Поэтому, обладателям Ябблочка приходится стоять в сторонке, т.к. эти компьютеры даже в категории самого высокого качества не наделены соответствующими свойствами.
Компьютер среднего уровня с рядовым видеоадаптером способен выдать картинку размерностью 1920х1080 и частотой под 30 фпс.
Для очков же альтернативной реальности необходима подача целых двух картинок с таким же разрешением, и частотой в три раза выше, т.к. из-за того, что дисплей расположен прямо у глаз, зритель может заметить его мерцание при маленьком показателе частоты.

Oculus Rift и PS VR

Шлемы VR третьей категории работают без поддержки компьютера. Эти девайсы содержат свое техническое и программное обеспечение, собственную ОС.

Кстати, Гугл уже начал готовить оборудование для создание медийного 360 градусного контента. Например, они создала железку Jump для создания панорамного контента. Это кольцевое устройство оснащено 16-ю камерами технически рассчитаными так, чтобы на выходе получалось видео без швов. Угол обзора у Jump шикарен, на все 360 градусов.

google jump

Рассмотрим подробнее каждый из типов устройств.

Полуфункциональные держатели для гаджетов

Cardboard от компании Гугл. Эти очки сделаны из обыкновенного картона (понятно из названия). Технология реализуется при помощи специальной оптики, магнитных и застегивающих элементов. На переднюю сторону крепится любой смартфон, к которому подключено приложение VR.

Второй девайс от Гугла – Daydream. Это следующая ступень в мир альтернативной реальности. Опора у этих устройств уже пластиковая. Есть также держатель и дополнительные инструменты (джойстик для навигации и другие). Это оснащение для VR еще только в плане выпуска в продажу. Ожидается поступление в начале следующего года.

Очки VR от Самсунга – Gear. Этот вариант уже хорошо продуман и оснащен всем самым необходимым. Компания Самсунг разработала устройство вместе с Oculus. Если говорить о втором производителе, то в его продукте под названием Rift содержатся детали шлема от Самсунга. Линзы у Gear способны обеспечить обзор на 96 градусов. В качестве сенсоров предусмотрены: гироскопический, акселерометр, приближающий и геомагнетический.

Самые первые модели были созданы под гаджет Galaxy Note 4 компании Самсунг. После новинка распространилась на Galaxy S6 и S6 edge, и новейшие — Galaxy S7 и S7 edge. С версией смартфона S6 поддерживается разрешение 2560х1440. Габариты самого устройства небольшие – 107х196х83, а вес всего 0,42 кг вместе со смартфоном. Гаджет подключается к очкам с помощью micro-USB. На корпусе девайса присутствуют управляющие составляющие: колесико, сенсор и кнопка «back», благодаря которым положение гаджета подстраивается под расстояние от глаз.

Девайсы VR c полноценными возможностями

С выходом в свет Rift от компании Oculus началась новая эпоха, открывающая более широкие двери в мир виртуальной реальности. Первыми показали новое измерение три версии этой модификации: Rift Crescent Bay, Rift DK 1 и Rift DK 2. В марте этого года вышла оптимальная конфигурация стоимостью почти 600 долларов. С технической стороны нельзя не оценить следующие преимущества: матрица с детальным разрешением 2160х1200, использование дисплея аппарата Sumsung Galaxy Note 3, частота 90 Гц, угол обзора 110 градусов. В качестве дополнительных устройств присутствуют: гироскоп, акселерометр, управляющие сенсоры, магнетометр, наушники для удобства и микрофон. В комплекте также есть пульт Remote, геймпад, кабели и два варианта приложений. Контроллер Touch дает возможность геймеру получить связь с альтернативным миром, который в процесс геймплея передает вибрации, которые отображают столкновения и падения. Шлем умеет обрабатывать жестикуляции игрока. Для распознавания и оцифровки движения рук в альтернативной реальности вместе с Rift можно дополнительно задействовать сенсор под названием Leap Motion.

Устройство взаимодействует лишь с ПК, которые снабжены процессором Intel Core i5 4590, оперативной памятью – 8 ГБ и видеокартой не ниже GTX 970 от Nvidia.

А теперь о шлеме PlayStation VR. Раньше это устройство называлось Project Morpheus. Работает на основе всеми любимой PlayStation 4. Эта приставка по многим характеристикам слабее компьютера, который поддерживается предыдущим шлемом. Поэтому, производитель принял комплекс мер для полноценного функционирования устройства.

Какие отличительные черты девайса PlayStation VR? Экран размером около 6 дюймов с разрешением 1920х1080. Угол обзора 100 градусов, частота смены изображения 120 Гц. Важна реализация внедрения в видеопоток дополнительных кадров, которые позволяют общей картинке сохранять плавность во время движения, несмотря на слабую консоль.

Дополнительно к консоли в продаже есть камера, которая способна определять положение очков VR в пространстве. Это достигается за счет 2-х оптических сенсоров и 9-и светодиодных. Находятся они прямо на внешней стороне устройства. Как и другие девайсы, шлем от Сони оснащен гироскопом и акселерометром. Управлять устройством можно при помощи 4-ой версии контроллера DualShock или подключив его к PlayStation Move.

HTC Vive тоже подключается через ПК. Этот шлем имеет важное преимущество перед предыдущими. Он оснащен дополнительными сенсорными установками, которые прикрепляются к стенам отведенной для игр комнаты. Получается, что разработчики HTC Vive постарались сделать свое детище безопасным для геймеров. В альтернативном мире происходит построение стен так, чтобы игрок в процессе погружения не покалечился о преграды реального. Вместе со шлемом Vive есть другие комплектующие – джойстики-нунчаки. Устройства напоминают Nintendo Wii. Их задача – соотнести движение рук геймера с вымышленным пространством. Не подводят и другие параметры девайса: разрешение 2160х1200, частота 90Гц, обзор – 110 градусов.

htc vive

Шлем Vive наделен сенсорами (гироскоп и акселерометр), laser трекингом и дополнительной камерой. Подсоединяется аппарат к компьютеру через USB 3.0 или HGMI. Комплектуется микрофоном и наушниками, которые встроены в шлем. Геймеров могут порадовать демоверсии игр, которые разработаны специально для этого аппарата.

Еще одна модификация, которая вошла в список – Star VR. Девайс создан компанией Starbreeze. Этот шлем имеет самый большой угол обзора в категории «устройства VR с полноценными возможностями», составляет 210 и 130 градусов по горизонтали и вертикали соответственно. На этот фактор влияет 5,5-дюймовый дисплей с разрешением 2560х1440.

starbreeze_vr

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

Полноценные и самостоятельные устройства VR

В этой категории замечен только один продукт. Название этого девайса HoloLens, разработчик – Майкрософт. Шлем работает по иной технологии, которая не формирует виртуальный мир, а дополняет реальный. Иными словами, в нем видны все окружающие пользователя предметы игровой комнаты и среди них есть виртуальные.

MS Hololens

Для включения HoloLens не нужны никакие дополнительные устройства и провода. Сам шлем – это отдельный ПК, который работает с десятой версией операционной системы Windows.

Великий Майкрософт держит информацию о технической составляющей в секрете. Просочилась лишь информация о том, что линзы устройства работают с соотношением каждой стороны 19/9 и имеют разрешение голографического формата в 2,5 миллиона пикселей. Эти характеристики дают возможность создавать четко прорисованные и реалистичные объекты.

В девайс также входят: глубинная камера, 4 фронтальных камеры, IMU (инерционный измеритель), HD-камера, датчик фиксирующий реальное пространство, датчик окружения и 4 микрофона.
Девайс работает на 32-битном процессоре Intel и включает в себя средство для работы с голограммой HPU, разработанное создателем специально для улучшения восприятия VR. Еще предусмотрены возможности Блютуса, Wi-Fi и подключения дополнительных устройств через micro-USB. По словам представителей корпорации, аккумулятор девайса способен продержаться пару часов.

Запускает процесс взаимодействия с альтернативной реальностью –
Clicker. Это специальное устройство предоставляет возможность совершать действия в виртуальной среде путем нажатия на кнопку.

ПО и SDK

Для первого типа устройств

Среди приложений, загруженных в Google Play, можно найти около 30 игр платного и бесплатного назначения, основанных на VR. Погрузиться в новую реальность можно посредством современного гаджета.

VR SDK от Гугла для Андроида рассчитана на Daydream и Cardboard. Желающим открывается простой в обращении API для создания своей собственной игры.

Google Cardboard

Код этого обеспечения работает на основе С++. Значительная часть игр с виртуальной реальностью задействуют много графических элементов. Поэтому, новоиспеченному создателю альтернативных миров не помешало бы познакомиться с OpenGL.

Пакет разработчика VR SDK от Гугла поможет упростить некоторые задачи, связанные с созданием ПО для виртуальной реальности:

  • Фокусировка линз;
  • Объемные звуковые эффекты;
  • Отслеживание движения головы;
  • 3D коррекция;
  • Бинокулярная визуализация;
  • Отладка объемной геометрии;
  • Взаимодействие с пользователем.

Google VR SDK для iOS дает возможность создавать основанные на виртуальной реальности игры для айфонов.

Есть версия VR SDK для Unity 3D версий 5.2.1 и выше. Среда работает с двумя платформами виртуальной реальности от Google: Daydream и Cardboard. SDK подключается к движку, как дополнительное расширение. Скрипты и префабы SDK дают возможность создавать с чистого листа новое виртуальное пространство или адаптировать уже существующие Unity-приложения для VR устройств.

К рассмотренным выше функциям, Google VR SDK для Unity помогает решать следующие задачки:

  • автостереоконфигарация для разных устройств;
  • взаимодействие с пользователем (триггер или контроллер в помощь);
  • корректировать уровень искажения для заданной линзы;
  • центровать экран, когда гаджет помещается в VR бокс;
  • калибровка гироскопа;
  • симуляция движения головы игрока с помощью мыши и клавиш;
  • контроль углов видимости;
  • обеспечивать соответствующие эффекты при поворотах головы игрока;
  • поддерживать режим стереоокон (изображение на изображении) и конфигурировать координаты виртуального пространства при коррекции искажений;
  • защита глаз от нагрузки автокоррекцией стереокартинки;
  • вычислять направление взгляда геймера;
  • общение с Canvas UI при определении направления взгляда или срабатывании триггеров;
  • создавать многочисленные эффекты для максимальной реалистичности и режима замедленной подачи изображения. А также увеличения уровня FPS;
  • Задействовать один и тот же код для триггера и определения прикосновения к экрану.

Если задана цель создать приложение для Gear VR, можно использовать VR SDK от Гугла. Еще один аналог от Oculus – Mobile SDK, который специализирован под смартфоны Самсунга – Note 4 и их более поздние версии. Со слов создателей, перед выпуском SDK во всеобщее пользование, ПО тщательно прорабатывалось и имело целью стать самым мощным пакетов для разработки VR приложений.

Oculus Mobile SDK являясь пионерами VR строения, предоставляют богатый функционал для разработки виртуальной реальности.

В комплекс SDK входит код программ с открытым доступом: 360 Photos, Cinema и 360 Video от Oculus. В качестве дополнительной опции поддерживается движок Unity (версия 4.5) для создания игровых приложений на нем.

Для полноценных шлемов

Oculus Rift способен взаимодействовать с большим количеством библиотек и дополнительных утилит. Первое, что необходимо – установить на компьютер дистрибутив Rift Runtime, далее уже Oculus SDK и другие компоненты.
Rift включает в себя Unreal Engine (версия 4.x) и Unity (модификация 3D) через API: Unity 4.x Legacy Integration, Oculus Utilities for Unity 5, Unreal Engine 4 Integration Wwise RedirectionPatch и Unreal Engine 4 Integration. В качестве вспомогательных компонентов можно задействовать: SDK для обработки звука, фреймворки для пятой части Unity и другие утилиты. Есть поддержка Torque 3D.

Производитель при проектировании SDK рассчитывал на максимальный комфорт разработчика. Поэтому начать разрабатывать просто и понятно. Перед работой требуется инициализировать LibOVR, нумерацию HMD ( экрана, который надевается на голову пользователя), отслеживание поворотов головы, раскадровку и визуализацию от Rift.

Комплекс разработки приложений под PlayStation VR можно найти в PlayStation Development Kit. Эти продукты распространяются лишь среди разработчиков этой системы.

Чтобы создать виртуальный мир для шлема Vive от HTC можно воспользоваться одним из трех пакетов для разработки: Unity Plugin, OpenVR SDK и Unreal Engine Plugin. Для этого необходимо зарегистрироваться на официальном сайте, как разработчик. При создании профи-аккаунта будут предоставлены для скачивания все нужные инструменты.

Руководство о конфигурации шлема Vive распространяется на ресурсе UE4. Сам шлем тесно связан с Blueprints. Начать работу с Vive с Unity можно после установки специальной надстройки. OpenVR SDK – апенсурс API, которое не зависит от движка и может использоваться в разных проектах. Исходный код OpenVR можно найти на GitHub.

По сути, OpenVR – это готовая игра, основанная на виртуальной реальности без привязки к железу. Для взаимодействия сойдет и Rift.

В комплекте Star VR нет отдельного SDK. Пользоваться придется инструментами открытого доступа, наподобие OpenVR.

Программный комплекс для устройств третьего вида

Как уже было сказано, HoloLens – это самостоятельный компьютер. Для разработки этой системы используется Windows 10 и последний пакет Visual Studio 2015, на который накатывается SDK с эмулятором самого HoloLens. По сути HoloLens – это виртуалка Hyper-V. Для разработки пойдет и семерка, но не рекомендуется, т.к. на десятке установлено все, необходимое для раскрытия всех возможностей VR, например ДиректИкс 12.

Игры для HoloLens – это своеобразные UWP-программы. Сам Windows предоставляет 6 важных функций для разработки ПО для HoloLens: систему распознавания взгляда, голоса, жестикуляции, а также координаты, объемный звук и картографию. Голограммы создаются на основе звуковых и световых эффектов.

Для HoloLens легко писать на Unity 5.4. Запустить приложение с виртуальным миром, которое разработано в Unity с помощью эмулятора HoloLens можно лишь после экспорта приложения в VS.

Уф, закончились.

Даже не смотря на то, что сфера VR очень молода, но мы уже рассмотрели около 10ти интересных и перспективных девайсов для погружения в глубину. Аппаратная и софтверная основа системы понятны и вполне просты, уже имеется несколько SDK и поддержка актуальных игровых движков (Torque 3D, Unreal Engine, Unity 3D). Грех на начинать кодить под них и мечтать о перспективах своих, пока, не рожденных детищ 😀 Пока, пока!

P.S. Кстати, а какие видеоадаптеры наиболее подходят для использования VR?

Как я уже говорил, шлемы виртуальной реальности отличаются высокими требованиями к видеокарте. AMD и Nvidia выпускают специальные видеокарты с пометкой «VR Ready».

4 комментария to “Виртуальная и дополненная реальность глазами инженера”

  1. Полезная статья, стал разбираться в принципах работы VR. Хочу начать изучать Unity 3d. Но чуть позже, сначала освою игру на гитаре.

    • Цикл статей о том как играть на гитаре будет в 2017 году.

      • Это просто замечательно! Жду с нетерпением!

        P.S. В моем детстве, еще при Батырхане Шукенове, существовали шлемы виртуальной реальности, одев который можно было сражаться (даже бензопилой!) с различными видами нечисти в игре дум. С разрешением была беда, и после 5 минут игры глаза очень сильно уставали. Как обстоят дела с сегодняшними шлемами воинов? Вся проблема сильной нагрузки на глаза заключалась в плохом разрешении/частоте фпс? или все же из-за слишком близкого расположения к сетчатке глаз ярких источников света? Глаза не перестанут видеть спустя 2 года, как было при СССР у детей, сидевших прямо перед телевизором с джостиком от денди в руках?

Оставить комментарий