Что нужно для создания виртуальной реальности. Обучение в формате виртуальной реальности. Что такое виртуальная реальность

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

Обучение в формате виртуальной реальности

Прежде всего, стоит отметить, что дополненная и виртуальная реальность – это не одно и то же. Для создания виртуальной реальности понадобятся или очки, которые нарисуют новый мир. Компоненты для создания виртуальной реальности (мощное и современное «железо», очки) достаточно дорого стоят. Еще одним камнем преткновения для внедрения виртуальной реальности в сферу образования может стать «потеря контакта» учителя-ученика: школьник путешествует в виртуальном мире, забывая о реальности в классной комнате.

С дополнительной реальностью дела обстоят на порядок проще. Дополненная реальность – инновационный способ демонстрации учебного материала. Унылая и весьма «заезженная» картинка оживает. Это не только не препятствует, но и в большей степени способствует (заинтересовывает) взаимодействию между учениками и учителем.


Разработка AR (анг. augmented reality) достаточно молода – с момента создания не прошло еще 10 лет, и массово в системе образования (даже развитых стран) пока не используется. Свое широкое применение она нашла в музейном деле («оживление» предметов) и уличной рекламе.
Чтобы привести систему в действие не потребуется хитроумных и дорогостоящих гаджетов: камера (подойдет даже камера в смартфоне), экран (телевизор, планшет, телефон), программное обеспечение, совместимое с имеющимся устройством, и маркер AR. В качестве маркера может быть использован чертеж, рисунок, графическое изображение или реальный объект (постройка, открытка или шоколадка). Приложение идентифицирует предложенный маркер и воспроизводит на экране графический объект или анимацию.

VR делает обучение увлекательным

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

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

От разработок к реальности.

Стартап HoloGroup (Россия) сегодня активно работает над внедрением технологии дополненной реальности в образовательные будни школьников.
HoloGroup стала лауреатом независимой премии «Время инноваций-2016» в категории «Компьютерные и беспроводные технологии» в номинации «Открытие года».

Обучение в формате виртуальной реальности от HoloStydy ©photo holo.group

Команда специалистов работает над разработкой уроков в формате AR, адаптированных под Microsoft HoloLens (разработанное ими приложение). С помощью данного приложения можно уже сегодня познакомится с устройством нашей планеты.
Дополненная реальность превращает монотонные уроки в захватывающее приключение.

Не знаю, как вы, а лично я вот уже полтора года жду, когда наконец VR начнёт разрывать рынок. Сначала были картонные Google Cardboard, которые служили идеальным подарком хоть другу, хоть жене. Потом Microsoft выпустило к финалу Супербоула красочное видео , показав далекие от реальности возможности Hololens. И конечно, за 2016 год мы посмотрели и почитали немало обзоров о невероятно крутых свежеиспеченных VR устройствах, а также поиграли в первые качественные ориентированные на данные девайсы игры.

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

Просто, как раз-два-три

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

Следующем шагом будет установка правильного «движка», коим в нашем случае будет являться Unity. На сегодняшний день он наилучшим образом настроен не только для создания VR-приложений с нуля, но и на перевод в данный формат уже существующих 3D творений. Кстати, блуждая по просторам интернета вы можете наткнуться на мнение, что опция VR у Unity изначально была разработана для взаимодействия с пакетом Google Cardboard SDK, поэтому использование под iOS доставит немало трудностей. Первая часть частично правдива, а вот вторая — нет. Во всяком случае реальных проблем замечено не было.

Третий и главный шаг — среда разработки приложения, это стандартные и всем известные IDE, принципиальной разницы в данном вопросе нет.

Ещё в помощь

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

Unreal Engine
Начиная с 4 версии вам также откроется доступ к возможностям работы с VR-графикой. Однако в силу некоторой сложности и дороговизны платформы, назвать Unreal приоритетным вариантом язык не повернётся.

InstaVR
Веб-сервис, позволяющий в несколько нажатий мышкой создать собственное VR-приложение. Прекрасно подойдёт для реализации простых задумок, будь то визуализация пейзажа или виртуальная 3D консоль.

Wonda VR
Специализированный сервис для создания VR-видео. Здесь действительно легко заниматься прототипированием, склейкой видео, наложением эффектов, но и цена начинается от 499 €. Впрочем, есть 14-дневная триал-версия для оценки возможностей.


Приложение для обработки фотографий с возможностью преобразования в формат VR.

Splash
Аналогичный сервис, доступный только для iOS. Ещё находится в стадии разработки, но уже имеет неплохой функционал.

Отличия от разработки игр

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

Полезная литература

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

Google VR — начнем с официального руководства от Google, повествующего о том, как сделать из простой коробки чудо-развлечение;

Microsoft VR — аналогичная пошаговая инструкция, но от Microsoft;

How to make a VR app with zero experience — полезная и наглядная статья, которая поможет вам создать своё первое приложение;

Creating a Gear VR app in Unity Free — а вот и обучающее видео, как с помощью своих прямых рук и Unity создать VR-конфетку.

В школьные годы я ездил на экскурсию в Лондон, и там впервые познакомился с виртуальной реальностью (VR) в игре Zone Hunter. Технология моментально меня зацепила, и я понял – в будущем хочу работать в этой сфере! Теперь, вот уже более 12 лет, я занимаюсь виртуальными промышленными тренажёрами и написанием ПО для VR-систем.

Я основатель и президент компании с названием «i’m in VR» . Мы предлагаем средства для создания VR-приложений, такие, как MiddleVR – связующее ПО, позволяющее 3D-приложениям (например, основанным на Unity) запускаться в любой VR-системе (комнаты виртуальной реальности, шлемы и другое). У меня есть блог про виртуальную реальность, который я начал вести задолго до того, как она стала популярной, и вы можете найти меня в твиттере .

Сегодня вы можете подумать, что создавать VR-приложения проще некуда – нужно просто согласовать движение камеры с отслеживателем Oculus Rift и готово. Иногда этого действительно хватает, но для подавляющего большинства случаев такой подход не сработает.

Главное в виртуальной реальности – эффект присутствия. Если человек не может погрузиться в игру, значит, вы что-то сделали неправильно. Можно обмануть разум, заставляя его воспринимать происходящее, как иной мир, но это не так просто, как кажется. Эффект присутствия – очень зыбкое чувство.

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

Виртуальная реальность в 2013-м

Виртуальная реальность погружает человека в трёхмерное окружение с помощью специальных шлемов, очков или других систем погружения. Поэтому мы часто используем термин iVR (immersive VR – виртуальная реальность с погружением), чтобы обособиться от виртуальных миров вроде Second Life или World of Warcraft. В начале 90-х эти технологии приковали к себе всеобщее внимание, но не смогли предоставить ожидаемых ощущений.

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

  • Обучение в виртуальных симуляторах на порядок эффективнее реальной практики: можно с высокой точностью управлять имитируемой средой, просматривать повторы и безбоязненно отрабатывать реальные манипуляции во множестве потенциально опасных ситуаций. На таких тренажёрах обучают хирургов, военных, полицейских, пожарных, стоматологов и даже рабочих по наружной отделке зданий! Это позволяет предприятиям экономить на дорогостоящих материалах и избегать различных рисков, давая более прозрачное представление о способностях практикантов.
  • У всех ведущих автопроизводителей есть VR-системы для тестирования дизайна и эргономики продуктов, которые ещё не увидели свет, позволяющие быстрее перебирать разные вариации по сравнению с реальными макетами. Это применяется и в производстве катеров, самолётов, тракторов, производственных линий, фабрик и даже кухонь! Взгляните на VR-приложения и системы от Peugeot или Ford !
  • Цифровые модели выглядят очень правдоподобно: вы можете со всех сторон рассмотреть свой будущий дом или оценить городскую планировку задолго до начала строительства. Для примера посмотрите демонстрационное видео от Enodo .
  • VR – полезное средство для исследования рынка в области розничной торговли: вы можете вживую взглянуть на внешний вид своего магазина до его постройки или переноса, проследить за движением посетителей и за направлением их взгляда. Это полезно при оценке расстановки фурнитуры и позволяет убедиться, что ваш дизайн выделяется среди прочих.
  • Виртуальная реальность – хороший способ лечения фобий: при боязни высоты можно перенестись на смоделированный утёс и прочувствовать свой страх. В этом случае помощь терапевта будет более эффективной, чем в реальных условиях на настоящей скале. То же самое относится и к боязни перелётов, пауков, собак и выступлений на публике. Таким, к примеру, занимается Стефан Бушар (Stéphane Bouchard) в Лаборатории киберпсихологии Университета Квебека в Оттаве.

И конечно же, виртуальную реальность можно использовать в играх! Но с середины 90-х таких игр было очень мало и создавались они, как правило, либо в исследовательских лабораториях, либо энтузиастами. Для сборки VR-системы и программирования самой игры требуются соответствующие навыки и оборудование. Насколько мне известно, за последние 10 лет не вышло ни одной коммерческой VR-игры.

Когда (не) стоит добавлять VR в игры

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

В таком случае, где VR будет уместной идеей?

Задача виртуальной реальности – заставить вас почувствовать себя в другом мире, будь он реалистичным или не очень. Вообще, для меня эффект присутствия – это определение VR. Нет чувства присутствия – нет VR!

Очевидно, среди жанров, отлично подходящих для VR, будут игры с видом от первого лица. Вообразите Mirror’s Edge или Call of Duty в VR! В некоторые играх (Assassin’s Creed, Splinter Cell, или Gears of War) вид из-за спины потенциально можно переделать в вид из глаз, чтобы мы могли почувствовать себя в теле героя. Полагаю, мы увидим возрождение квестов и бродилок. Вероятно, виртуальная реальность появится и в совершенно других играх. Симуляторы Бога? Guitar Hero?

Но я считаю, что больше всех от VR выиграют игры, давящие на эмоции.

Хорроры могут быть очень впечатляющими. Ещё можно вспомнить про Heavy Rain. Отличная игра, я по-настоящему погружался в неё и сильно переживал. Однако, временами всё портилось неестественным взаимодействием, к тому же, там нет элемента физического присутствия. И вот тут может помочь виртуальная реальность!

VR как новый формат медиа

Тут я сразу должен предупредить: добавлять виртуальную реальность в игры может быть непростым делом, если её поддержка не задумывалась изначально. VR – это как радио или ТВ на раннем этапе развития: сначала по радио передавали только оперы, а по телевизору показывали одни спектакли. Понемногу люди стали создавать наполнение специально для этих новых форматов. Так операторская работа и монтаж стали базовыми понятиями для киносъёмки.

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

Эффект присутствия

Как я и говорил, для меня определение VR – эффект присутствия. Без чувства, что вы оказались в каком-то другом месте игра останется обычной интерактивной трёхмерной средой, а не настоящей VR-средой – даже, если в неё вложены миллионы долларов. Уж поверьте, я опробовал несколько таких, и это просто беда.

При наличии эффекта присутствия игрок будет демонстрировать естественные реакции и эмоции. На высоком обрыве вы испытаете страх высоты (гарантированно). Если вам бросят виртуальный мяч, вы попытаетесь поймать его. Если нарисованный человек спасёт вас от неминуемой смерти, вы ему улыбнётесь. Я серьёзно!

Эффект присутствия – это сложная и деликатная тема. На данный момент самые интересные его исследования проводит Мэл Слэйтер (Mel Slater). В довольно известной статье он разделят ощущение присутствия на два типа: когнитивное (разум) и персептивное (чувства).

Люди нередко говорят, что чувство присутствия у них вызывают игры, фильмы, книги и даже просто кем-то рассказанная история (как глубоки корни VR!). Это когнитивное присутствие – в иные миры вас переносит воображение.

Персептивное присутствие

Вышеперечисленные способы погружения не подразумевают персептивного присутствия, которое в самом деле реалистично обманывает ваши чувства. Зрение, слух, осязание, обоняние, проприоцепция (от лат. proprius - «собственный, особенный» и receptor - «принимающий»; от лат. capio, cepi - «принимать, воспринимать»), глубокая чувствительность - ощущение положения частей собственного тела относительно друг друга, далее гугли википедию)… Не забывайте, что человеческое восприятие не идеально: человеческий мозг многое упрощает. Знание этих ограничений – являющееся основой теории VR – позволяет вам создавать персептивные иллюзии, вроде ходьбы в неправильном направлении или пространств с невозможной геометрией.

Как же этого добиться?

Я считаю, самый простой способ добиться эффекта персептивного присутствия – отслеживать движения головы. Поворот головы и поворот камеры в трёхмерном мире – основа для цикла «действие – восприятие».

Значит, вам нужна возможность совершать движения, и эти движения должны отражаться в виртуальном мире. Ваше тело вовлекается в процесс. Как сказал Антонио Дамасио: «Разум заключён в теле, а не в одном лишь мозге».

Прерывание эффекта присутствия

В свою очередь, это означает, что если действие не приводит к ожидаемому результату, разум чувствует неладное. Это называется прерыванием присутствия.

Если вы задаётесь хотя бы одной целью, создавая VR, этой целью должно быть поддержание эффекта присутствия. Чувствовать себя по среди пустой комнаты – это VR. Не чувствовать себя посреди Gears of War– это не VR.

Минимальная VR-система

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

Для меня это значит, что сам по себе OculusRift– это (пока) не минимальная VR-платформа. Ему не хватает полноценного отслеживания головы, а отслеживания рук нет вообще. Я знаю, что всё это можно исправить своими силами, с помощью таких устройств, как Razer Hydra. Но пока у нас нет всеобъемлющей VR-платформы, производители не смогут спокойно полагаться на единый стандарт оборудования.

Задержки

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

Джон Кармак (John Carmack) говорит, что «при задержках менее 20 миллисекунд начинается настоящая магия – трёхмерный мир кажется незыблемым!»

Некоторые исследователи и вовсе советуют добиваться задержки менее 4 мс от момента начала движения до вывода необходимого изображения на экран. Для наглядного представления скажу, что при игре с фреймрейтом 60 fps между кадрами проходит 16 мс. Добавьте к этому задержку устройства ввода, которая может варьироваться от нескольких миллисекунд до более 100 мс в случае с Kinect, и задержку дисплея, которая тоже может быть как невысокой, так и более 50 мс у потребительских моделей VR-гарнитур.

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

Последовательный мир не обязательно должен быть реалистичным

Мы разобрались, что персептивное присутствие – это реалистичный обман органов чувств. Когнитивное – обман разума, но не чувств – истекает из ощущения, что вы можете влиять на виртуальный мир и что события в нём происходят на самом деле. Это означает, что вы должны поверить в «правила» симуляции. Для этого нужно убедиться, что ваш мир будет не столько реалистичным, сколько связным и последовательным. К примеру, непоследовательность может проявляться в том, что игрок может взять со стола один стакан, но не может взять другой. Прерванный эффект когнитивного присутствия восстановить очень сложно. Игрок постоянно вспоминает, что вокруг не настоящий мир, и чтобы он снова показался реальным, потребуется время.

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

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

Вот почему я считаю, что наиболее сильное погружение из всех увиденных мной приложений достигнуто в Verdun 1916-Time Machine. Оно обманывает множество чувств за раз: зрение, обоняние, осязание… Но что самое интересное: для наилучших впечатлений там специально ограничили взаимодействие с миром. Вы можете только крутить головой, поскольку вы – раненый солдат.

Учитывая это жёсткое ограничение, будет очень просто удержать игрока от прерывания присутствия. Вы не можете шевелить руками, так что и сквозь объекты они не провалятся; вас не заставляют двигаться с помощью неестественных нажатий на кнопки. Было не раз замечено, что люди улыбались, когда видели подбегающего на помощь виртуального товарища!

Измерение присутствия

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

Впрочем, вы можете попробовать оценить, насколько естественны реакции игрока. Мы уже упоминали о некоторых из них – попытка поймать мяч, страх высоты, страх за своё здоровье при угрозе нападения, попытка избежать столкновения…

На этом закончим с философскими размышлениями и перейдём к практическим советам:

Масштабируйте 1 к 1

Масштаб игрового мира должен быть реальным. Камера должна располагаться на высоте, соответствующей нормальному человеческому росту (если, конечно, вы не хотите играть ребёнком, как в Among the Sleep). Движения головы не должны усиливаться (если вы не используете техники перенаправления).

Самый простой способ добиться реального масштаба: единица длины в виртуальном мире должна соответствовать реальной — 1 виртуальный метр равен 1 метру реальному. Поле зрения должно идеально совпадать с углами обзора вашего дисплея. В идеальном виртуальном мире (или большом промышленном VR-тренажёре) расстояние между глазами должно быть подсчитано с высокой точностью. Мозг будет обрабатывать все эти сигналы; вы можете не добиться эффекта присутствия или он будет нестабильным – к тому же пользователи могут почувствовать тошноту – если строго не следовать этому правилу.

Ознакомьтесь с аппаратным обеспечением

Ознакомьтесь с возможностями отслеживания: позволяет ли устройство отслеживать смещения или только повороты? Способен ли датчик сообщать данные позиционирования и в каких пределах? Какова его точность? Когда данные отслеживания перестают быть полезными? Ознакомьтесь с полем зрения: следуя совету о масштабе, вы не должны искажать виртуальное поле зрения. При узком поле зрения пользователь будет вынужден чаще мотать головой и рискнёт пропустить важные события на периферии. Ознакомьтесь с разрешением: если пользователь должен прочитать текст, придётся размещать его ближе перед глазами. Как и с разработкой под Android, ваша игра в итоге будет запускаться на большом количестве разных устройств. Вскоре нас может ожидать война множества платформ с разными характеристиками. Такие инструменты, как MiddleVR, помогут вам работать с разными VR-системами.

Не меняйте точку обзора

Если делаете игру от первого лица, избегайте видеороликов и управления транспортом от третьего лица. Это прерывает погружение.

Боритесь с плохими привычками

У многих заядлых игроков есть плохие привычки: надев шлем, они будут сидеть ровно, будто перед телевизором. Те же, кто играет редко, сразу начнут оглядываться по сторонам. Игроков нужно отучать от сегодняшних игровых ограничений. В обучающих миссиях нужно мотивировать игрока оглядываться вокруг и двигать руками. Игра должна извлекать из этого пользу. Например, в одном моём недавнем прототипе враги появлялись справа, слева и сверху, и нельзя было двигаться/осматриваться кнопками или мышкой. Чтобы победить, пользователь вынужден поворачивать голову и целиться рукой. В другом моём недавнем прототипе единственным интерактивным объектом была свеча посреди очень тёмного окружения. Отличный способ заставить игрока исследовать местность: он берёт свечу и идёт в темноту, двигая и поджигая некоторые объекты при решении головоломок.

Поддерживайте активность игроков

В том же Heavy Rain вас почти не отрывают от игрового процесса. Есть множество роликов, похожих на неигровые, но тут, вдруг, вам даётся управление. Если в это время у вас в руках нет контроллера, вы не успеете выполнить действие. Это заставляет всегда быть начеку.

Ещё одна интересная особенность Heavy Rain – события происходят в реальном времени, а значит вам нужно думать и действовать быстро: застрелить парня до того, как он убьёт моего товарища? Вас заставляют быстро принимать решения, и, как и в реальной жизни, вы никогда не узнаете, насколько правильными они были.

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

Опять пример из Heavy Rain: вам нужно быстро позвонить в одну из комнат гостиницы. Сможете вспомнить её номер за 15 секунд? Как и в жизни, приходится напрягать память, переживая сильный стресс.

И наконец, как можно усерднее работайте над эффектом присутствия

Создать эффект присутствия непросто. Начинайте с малого, тестируйте почаще. Работайте над присутствием постепенно, вносите небольшие изменения и тестируйте снова. Переживания игрока происходят у него в голове! Вы не создаёте переживания, а провоцируете их. Эффект присутствия должен быть естественным. Изучайте реакции пользователей и вносите изменения. Не месите в кучу все свои хорошие идеи только ради эффектного трейлера. Немало многообещающих роликов на деле оказывались отвратными играми.

Заключение

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

«Мы относимся к виртуальной реальности, как к чему-то совершенно новому, со своими возможностями и особенностями, позволяющими создавать формы медиа, с которыми люди взаимодействуют всем своим телом, принимая всё происходящее за реальность». – Мэл Слэйтер.

По материалам Gamasutra , автор Себастьен Кунц (Sébastien Kuntz).

Менеджер по продукту сайт пообщался с командой Pixonic: про создание игры для виртуальной реальности, эксперимент с разработкой на iMac Pro и будущее VR.

В закладки

Российская компания Pixonic была основана в 2009 году. В студии работает более 200 сотрудников в четырех офисах - в Москве, Берлине, Белгороде и на Кипре. «Мы расширяемся, и нам уже не хватает места, поэтому скоро хотим переехать в новый офис», - рассказывает стратегический директор Pixonic Никита Гук во время экскурсии по московскому офису компании.

Поводом для нашей встречи стали два эксперимента, которые провела студия. Во-первых, команда выпустила свою первую игру для виртуальной реальности и согласилась рассказать подробности о её разработке. Во-вторых, старший VR-разработчик компании попробовал использовать для создания игры iMac Pro - компьютер, который Apple позиционирует как мощный инструмент для разработчиков приложений в виртуальной реальности.

War Robots для виртуальной среды

«Когда появились первые разговоры о виртуальной реальности, мы попытались изучить аудиторию VR-игр, но быстро поняли, что на этом рынке вообще ничего непонятно: сколько игроков, как их найти и готовы ли они вообще платить, - начинает беседу Никита Гук. - Поэтому мы решили провести эксперимент и самостоятельно собрать интересующие нас данные».

Экспериментальный проект команда решила создать на базе главного блокбастера компании - free-to-play-игры War Robots, в которой пользователь становится пилотом боевого робота. Он может играть в как в одиночку, так и в составе команды. Для победы в War Robots необходимо либо удержать от захвата как можно больше территории, либо полностью уничтожить отряд соперника.

War Robots - самая кассовая игра за всю историю компании. В 2016 году Google назвала её одним из самых захватывающих проектов на своей мобильной платформе. В 2018 году приложение преодолело отметку в 80 млн скачиваний, а его ежедневная аудитория превысила 1 млн игроков.

«Мы хотели проверить, воспримут ли War Robots с такой графикой в виртуальной реальности. Либо же нужно создавать нечто особенное с wow-эффектом исключительно под Oculus», - рассказывает Гук.

Pixonic выделила для проекта команду из 18 человек, которые за почти шесть месяцев создали первую версию игры для виртуальной реальности - War Robots VR. Как и в мобильной версии игры, пользователю нужно отбиваться от атак других роботов, находясь в кабине робота.

Трейлер игры War Robots VR

Особенности разработки под VR

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

Так как у разработчиков Pixonic не было богатого опыта разработки VR-игр, они начали с создания очень грубой модели кабины, состоящей из простых прямоугольников.

«Так мы смогли понять, как пользователь будет управлять роботом в VR, какого масштаба должна быть кабина, на каком расстоянии расположить здания и другие объекты, с какой скоростью игрок должен перемещаться, чтобы ему было комфортно и не скучно. Когда ты смотришь через шлем, у тебя совершенно другие ощущения от игры, чем если просто смотреть на нее через экран», - рассказывает старший VR-разработчик компании Артем Клиновицкий.

Артем Клиновицкий

Главная проблема, с которой не сталкиваются разработчики мобильных приложений, но которую приходится постоянно решать создателям VR-игр - укачивание человека в шлеме виртуальной реальности. «У нашего бывшего продюсера Артура Мостового при разработке даже была гипотеза о том, что VR можно использовать для тренировки вестибулярного аппарата», - вспоминает Гук.

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

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

Например, при разработке игр для смартфонов и компьютеров разработчики ориентируются на минимальное количество сменяемых кадров в секунду - FPS.

Для спокойной и не слишком динамичной игры на мобильном устройстве достаточно придерживаться значения 30 кадров в секунду. Для игры в виртуальной реальности минимальное значение FPS в несколько раз больше, чем на смартфоне или компьютере - например, для шлема HTC Vive оно составляет 90 FPS. При меньшем значении игрока начинает укачивать, он теряет ощущение присутствия в виртуальной среде и вскоре у него возникает непреодолимое желание покинуть игру.

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

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

Игрока в VR-очках ни в коем случае нельзя куда-то насильно тащить. В обычном шутере игрок нажимает на клавишу и персонаж бежит вперед - здесь всё нормально.

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

Артем Клиновицкий

VR-разработчик

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

«Если в обычной игре мы в любой момент можем отвязать камеру от игрока и показать всю сцену с разных углов, то в VR мы всегда должны понимать, что смотрим на всё только от первого лица, какой бы ни была игра», - объясняет Артем Клиновицкий.

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

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

Скриншот игры War Robots VR

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

На чем разрабатывают VR-игры

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

Разработка в VR крайне требовательна к ресурсам компьютера. Большинство сотрудников студии работает на ПК - члены команды могут заказывать любую конфигурацию компьютера, необходимую для комфортной работы. «Если кто-то постоянно работает со сложной графикой, мы можем собрать для него мощную станцию с четырьмя видеокартами. В этом вопросе у нас нет ни лимитов, ни ограничений - главное, чтобы было комфортно работать», - рассказывает Никита Гук.

Разработка War Robots VR велась в Unity на ПК. Однако в качестве эксперимента старший VR-разработчик студии попробовал перейти на iMac Pro - компьютер, который Apple позиционирует как мощный инструмент для разработчиков приложений в виртуальной реальности.

По словам Клиновицкого, переход с ПК на iMac для него оказался бесшовным - Unity для macOS практически не отличается от версии для Windows: «Редактор кода идентичный. Остальные средства разработки так же не отличаются. Перейти было легко и быстро».

«Однако на моём ПК с топовой видеокартой производительность была лучше, чем на iMac Pro», - продолжает разработчик. По его словам, проблема заключается также в том, что программное обеспечение для работы с VR для iMac еще находится в стадии разработки.

Почти все разработчики Pixonic работают с двумя большими мониторами, стоящими рядом: на одном выводят редактор кода, на другом - превью игры или другие рабочие инструменты. В случае с 27-дюймовым iMac разработчику Pixonic сложно было подобрать равноценный по качеству и размеру внешний монитор, поэтому приходилось часто переключать окна, что снижало эффективность работы, отмечает VR-разработчик.

При этом рабочая станция Apple лучше справлялась с параллельными процессами при разработке, что позволяло работать одновременно в нескольких приложениях вне зависимости от нагрузки: «В Unity есть такой процесс как запекание света - расчет света на карте. Обычно это долгий процесс, который для большой карты может занимать несколько часов, а иногда и дней. На iMac он шел быстрее благодаря хорошему менеджменту процессов. При этом несмотря на сильную загруженность процессора ты все равно можешь параллельно работать с остальными приложениями. На Windows в таких ситуациях сразу всё умирает, и ты идешь пить кофе».

Клиновицкий считает, что iMac Pro больше подходит для левел-дизайнеров и тех, кто работает с графикой для игр: «Сцена в шлеме виртуальной реальности всегда выглядит иначе, чем когда ты смотришь на нее на экране монитора, поэтому для дизайнеров важны удобные инструменты для редактирования в VR».

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

Рынок в зачаточной стадии

Эксперимент с War Robots VR показал, что рынок игр для виртуальной реальности все ещё находится в зачаточной стадии, считает Никита Гук: «Он не похож на игровую индустрию в привычном понимании. VR - это шоу-кейс интересных технологий, с которыми можно поэкспериментировать в своём продукте ».

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

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

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

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

Никита Гук

Стратегический директор Pixonic

«Мы делали War Robots VR на чистом альтруизме, потому что было очевидно, что в ближайшее время вряд ли крупная разработка в VR сможет отбить инвестиции, - рассказывает Никита Гук. - Главный показатель успешности проекта для Pixonic - его масштабируемость. Поэтому, например, мы не считаем успешным проект, приносящий миллион долларов в месяц, но при этом многократно не масштабирующийся ».

Другой показатель, на который смотрят в Pixonic при запуске игр - это их потенциал - будут ли пользователи возвращаться в неё вновь и вновь, захотят ли играть на одной и той же карте много раз - как в Counter Strike. «Хочется, чтобы примерно так же было в VR, однако пока на этом рынке нет таких успешных примеров», - заключает стратегический директор Pixonic.

Будущее и VR

Отвечая на вопрос о главных проблемах VR-игр, разработчик Pixonic отмечает низкое разрешение современных шлемов. «Когда ты видишь перед глазами большую картинку, например, из игры, то быстро забываешь про довольно крупные пиксели на экране. Но когда ты видишь текст, это сразу бросается в глаза».

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

Будущее VR, конечно, не в шлемах. Шлемы - это лишь промежуточный этап на пути к виртуальной реальности. Будущее VR наступит, когда мы сможем подключаться непосредственно к мозгу, когда тебе не будут нужны никакие промежуточные устройства. Тогда этот рынок выстрелит, и всё будет как в фильме «Первому игроку приготовиться».

Артем Клиновицкий

Это новое захватывающее направление в разработке приложений. Оно знаменует собой новые форматы сторителлинга и более действенные способы передачи эмоций и ощущений.

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

Что понадобится

Телефон с гироскопом под управлением Android KitKat или более новой версии.

Unity3D — кроссплатформенный игровой движок версии 5.6 и выше.

Видео с обзором в 360 градусов.

Как создать приложение?

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

Шаг 1: Построить сферу ?

Создадим новый Project в Unity или новую Scene, если хотим интегрировать видеоплеер в уже существующий проект. Считайте, что Scene - это один уровень в игре, а Project - вся игра.

Поместите сферу (3D object → Sphere) радиуса 50 (Scale = 50, 50, 50) в центр Scene (Position = 0, 0, 0). Установите позицию камеры на 0, 0, 0. Камера - это глаза игрока: если поместить её не в центр, то видео будет искажённым.

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

Шаг 2: Перевернуть нормали сферы ?

В нашем случае нужно смотреть на сферу изнутри, поэтому мы вывернем её наоборот.

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

Применим программу Shader к Material сферы. Материалы в Unity контролируют внешний вид объектов. Шейдеры - это небольшие скрипты, которые рассчитывают цвет каждого рендерированного пикселя, основываясь на информации о материале и освещении.

Создадим новый Material для сферы, к нему применим Shader, код для которого можно скопировать отсюда . Этот шейдер вывернет каждый пиксель сферы, и изнутри сфера будет выглядеть как большой белый шар.

Шаг 3: Спроектировать панорамное видео внутрь сферы?

Импортируйте в проект видео с обзором в 360 градусов формата mp4, перенесите его на сферу. Появится компонент Video Player, и видео будет готово к воспроизведению. В окне этого компонента можно установить бесконечный повтор и отрегулировать настройки звука.

Прим. ред. Если у вас нет собственного видео такого типа, можно использовать чужие заготовки, свободно распространяемые в Интернете.

Шаг 4: Настроить поддержку Google Cardboard ?

Используя GoogleVR SDK, мы создадим стереоскопическое изображение. Совокупность эффекта рыбьего глаза, применённого к обеим частям разделённого наполовину экрана, и искажения пластиковых линз Google Cardboard создаёт иллюзию глубины картинки и погружения в виртуальную реальность.

Для того чтобы добавить GoogleVR SDK к проекту, скачайте и импортируйте плагин . Далее скорректируйте настройки Android:

  1. В верхнем меню выберите File → Build Settings . Добавьте сцену, если она еще не была добавлена, а из предлагаемых платформ выберите Android.
  2. Нажмите на Switch Platform . Переключение платформы займёт некоторое время.
  3. Нажмите на Player Settings . На панели инструктора появятся компоненты.

В окне Player Settings в секции Other settings :

  • Отметьте галочкой Virtual Reality Supported . В выпавшем окне Virtual Reality SDKs нажмите на +, добавьте в список Cardboard .
  • Выберите для вашего приложения уникальное имя и введите его в поле Bundle Identifier . Уникальные имена приложений под Android обычно имеют форму обратного доменного имени, например, com.example.CoolApp . Подробнее про это можно почитать в официальной документации и в Википедии .
  • В меню Minimal API Level выберите Android 4.4 Kit Kat (API Level 19) .

В панели Project Browser в папке GoogleVR/Prefabs выберите элемент GvrViewerMain и перетащите его на сцену. Задайте ему такую же позицию, как у центра сферы: 0, 0, 0 .

Префаб GvrViewerMain контролирует все настройки режима виртуальной реальности, например, адаптацию экрана к линзам Cardboard. Он также получает данные с гироскопа телефона для отслеживания поворотов и наклонов головы. При повороте головы Camera в видеоплеере тоже повернётся.

Шаг 5: Запустить приложение на Android ?

Это можно сделать двумя разными способами:

  • Выберите File → Build Settings . С помощью USB-кабеля подключите телефон к компьютеру, включите отладку по USB и нажмите Build & Run . Приложение загрузится сразу на телефон.
  • Или нажмите Build only . Приложение не загрузится на телефон, но зато сгенерируется в APK-файл, который можно отправить другим людям или выложить в магазин мобильных приложений.

В течение процесса сборки вас могут попросить выбрать корневую папку Android SDK. В этом случае скачайте Android SDK и укажите расположение его папки.

Осталось только запустить приложение и вставить телефон в Cardboard. Теперь вы можете испытать погружение в виртуальную реальность с обзором в 360 градусов у себя дома.

Что дальше

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

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

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

Статьи по теме: