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

Не знаю, как вы, а лично я вот уже полтора года жду, когда наконец 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-конфетку.

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

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

Стоит отметить, что термин «виртуальная реальность» впервые появился в далёких 60-х годах в Америке. По определению, виртуальная реальность — это искусственное компьютерное воспроизведение ситуации, симуляция реальности.

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

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

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

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

  • Первое свойство — это порожденность. То есть каждая искусственная реальность является результатом активности другой, внешней по отношению к первой. В связи с этим она является сотворённой, то есть не имеет реального представления.
  • Ещё одним свойством является актуальность. В условиях виртуальной реальности не существует прошлого или будущего. Она существует только в режиме реального времени «здесь и сейчас» и актуальна только в момент наблюдения.
  • Виртуальная реальность автономна. В ней реализовано собственное время, законы взаимодействия и пространство. Как правило, она не копирует и не продолжает реальное окружающее пространство.
  • Интерактивность — основное свойство виртуальной реальности, которое делает её востребованной. Она может взаимодействовать с иными реальностями при этом оставаясь независимой. При этом человек, находясь в VR, воспринимает события от первого лица, то есть он является полноценным участником событий с полным погружением в процесс.

Можно выделить несколько основных типов виртуальной реальности.

  1. Полное погружение. Это наиболее сложный вариант организации виртуальной реальности. Для этого требуется специализированное оборудование, гарантирующее погружение в процессе исследования окружающего пространства. Мощный высокопроизводительный ПК, который позволяет оперативно реагировать и выдавать ответную реакцию окружения на действия пользователя. Таким образом,создаётся наиболее правдоподобная симуляция окружения и его детализация.
  2. Реальность без погружения. К ней относятся симуляции использующие качественное изображение и звук. В качестве яркого примера можно привести 3D-проекты, транслируемые на широкоформатный экран, или объёмные реконструкции каких-либо объектов для большей визуализации. Несмотря на то что такие вещи не соответствуют стандартам виртуальной реальности в полной мере, они все же дают возможность более глубоко оценить моделируемое пространство, в отличие от привычных средств мультимедиа.
  3. Виртуальная реальность с совместной инфраструктурой. Это определённые симуляции некоего мира, которым для полноты картины не хватает только эффекта присутствия. Они не дают возможности полного погружения, но имеют хорошие возможности взаимодействия с другими участниками процесса. Стоит отметить, что последняя характеристика не всегда качественно реализована в продуктах с полным погружением. Примером такой VR может стать всем известная игра Minecraft. Создание виртуальных миров находит свою реализацию не только в играх, но и в организации рабочего процесса или учебного пространства.
  4. Искусственная реальность на базе интернет-технологий. Это направление создания виртуальной реальности в сети на основе специальной технологии, подобной HTML.

Девайсы для погружения в виртуальную реальность

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

Шлемы и очки

Эти приборы обеспечивают визуальное и звуковое восприятие реального мира. Основными компонентами оборудования являются: два экрана со смещённым изображением для создания объёмного восприятия картины; штор, защищающих от попадания света снаружи; стереонаушники, передающие звук. Шлемы оборудованы гироскопами и акселерометрами.

Можно выделить три вида шлемов:

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

Комнаты

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

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

Наверное, не нужно заводить разговор о стоимости организации такого помещения, она более чем велика.

Информационные перчатки

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

Джойстики

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

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

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

Применение виртуальной реальности

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

  1. Обучение. Виртуальная реальность позволяет создать тренировочную обстановку для практики различных навыков. К этому можно отнести пилотирование, парашютный спорт или операции, имеющие особую степень сложности.
  2. Наука. В той области проектирование виртуальной реальности даёт больше возможности для изучения и понимания разных процессов. В большей степени такому подходу подвержено изучение мира молекул и атомов.
  3. Виртуальная реальность позволяет реализовать на практике микрохирургию. Хирург может управлять манипуляциями робота, находясь в состоянии погружения в VR. Такой подход позволяет реализовать более полный контроль над процессом.
  4. Архитектура и промышленный дизайн также активно применяют возможности виртуальной реальности. Создание виртуальных моделей позволяет более детально проработать внутреннюю часть проекта, а также провести тестирование технических особенностей.
  5. Как уже упоминалось выше сфера развлечений является основной областью применения виртуальной реальности. Стоит отметить, что это не только игровой интерфейс, но и фильмы, виртуальный туризм и многое другое.

VR продолжает своё развитие и находит всё больше областей применения.

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

Часто люди путают виртуальную реальность с дополненной. Ярким примером последней можно считать нашумевшее недавно приложение для мобильных устройств PokemonGo.

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

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

В школьные годы я ездил на экскурсию в Лондон, и там впервые познакомился с виртуальной реальностью (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 наступит, когда мы сможем подключаться непосредственно к мозгу, когда тебе не будут нужны никакие промежуточные устройства. Тогда этот рынок выстрелит, и всё будет как в фильме «Первому игроку приготовиться».

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

1. Изучаем оборудование

Спросите себя: меня интересует разработка для десктопных устройств, наподобие HTC Vive, или меня больше привлекают мобильные устройства вроде Samsung Gear VR или Google Cardboard? Если вы пока не определились, то почитайте обзоры и подумайте о том, что лучше выбрать для вашего рынка. Если для ваших идей требуются контроллеры движения или качественная графика, то ориентируйтесь на подключаемые к компьютеру очки VR. Модели, которые сегодня поддерживаются движками Unity, Unreal и веб-реaлизациями:

Компьютерная VR:
  • Фотограмметрия и 3D-сканирование
  • Изучите введение по пространственному позиционированию звука от Oculus, а также это видео 3D Audio: Designing Sounds for VR .

4. Внедрение интерактивности

После того, как вы освоитесь с движком и приготовите арт-материалы, нужно будет придумать, как придать вашему проекту интерактивности. Я очень рекомендую сначала почитать о принципах построения UI и UX в виртуальной реальности. Иначе у ваших пользователей могут заболеть глаза от плохих решений по стереоскопическому рендерингу, или их укачает. Этого можно избежать, просто отказавшись от привязки текста к полю просмотра, или поместив камеру игрока во время движения в видимую капсулу (автомобиль, скафандр, кабину). А если вы хотите реализовать ручное управление, то рекомендую делать всё как можно реалистичнее - ваши усилия по исследованию и прототипированию будут вознаграждены чувством присутствия.
. Руководство, объясняющее разные полезные принципы.
  • UE4 HTC Vive – Как взаимодействовать с меню с помощью контроллеров движения .
  • Вам потребуется освоить некое подобие скриптового языка. В Unreal Engine 4 используется интуитивно понятная, схематическая скриптовая система Blueprint Visual Scripting . К слову, она будет полезна для тех, кто ещё не слишком уверенно чувствует себя в программировании вообще. Общее введение в Blueprint , эта система достаточно мощная, чтобы с её помощью сделать весь проект, не написав ни строчки кода (хотя вы и будете использовать ряд программистских методик). А вообще в Unreal используется С++, а в Unity - C#. Многие из тех, кто стремится войти в VR-разработку, имеют очень мало опыта программирования, так что этот этап становится особенно трудным. Если вы самостоятельный разработчик, помните - лучше начинать с малого . Когда вы освоите базовые вещи, можно будет переходить к более масштабным идеям. Но начните лучше с самого примитивного проекта . Развивайтесь поэтапно, создав несколько проектов, вы сможете гораздо увереннее штурмовать более сложные задачи.