Основы создания виртуальной реальности
В школьные годы я ездил на экскурсию в Лондон, и там впервые познакомился с виртуальной реальностью (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) в Лаборатории киберпсихологии Университета Квебека в Оттаве.
Когда (не) стоит добавлять 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– это запредельные впечатления! Если кто-то из читателей работает в этом направлении, не стесняйтесь писать мне, мы будем рады поделиться мнением о вашей игре.Эффект присутствия
Как я и говорил, для меня определение 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-гарнитур. В случае со стереоизображением нужно учитывать, что игра потребует обработки двух картинок одновременно. Будучи разработчиком, вы не можете ничего поделать с задержками ввода и дисплея, но вы должны обеспечить высокую производительность игры!