Данная статья является третьей в цикле про качественную разработку VR-проектов. Ранее мы уже изучили принципы оптимизации в статье «Рендеринг и оптимизация в VR-разработке». Ссылки на другие материалы можно найти в обзорной статье.
До сих пор звуковые эффекты играли при разработке ПО второстепенную роль и едва ли были заметны. Но при VR-разработке они становятся неотъемлемой составляющей проекта.
Правильное звуковое сопровождение VR-проекта значительно повышает погружение пользователя и усиливает эмоции.
Хороший VR-проект переносит нас в виртуальные миры и позволяет ощутить эту смоделированную реальность на эмоциональном уровне. Однако существуют определенные ожидания и, если наши проекты не смогут им соответствовать, погружение и правдоподобность пропадут.
Один из аспектов этих ожиданий — звуковые эффекты, которые возникают в реальной жизни. Когда стакан ставят на деревянный стол, нажимают на дверную ручку или проводят рукой по креслу — во всех этих ситуациях возникают звуки, которые мы, несомненно, ожидаем.
В классических играх или приложениях мы принимаем не такое большое участие, поэтому отсутствие звука беспокоит нас не так сильно. Но в VR все не так. Поэтому появляется новая проблема, но также и шанс перенести впечатления на новый уровень.
Тут нам пригодится тот факт, что мы знаем точное положение, и поворот головы, и, например, в случае Vive также положение рук по отношению к голове. О том, какие классные эффекты можно внедрить в свой проект, опираясь на эти данные, мы рассмотрим в конце статьи.
Сначала пробежимся по аппаратному и программному обеспечению и узнаем, почему даже сегодня при симуляции звука прибегают к обману.
Технология
Технология моделирования и распознавания звуковых волн существует уже давно. Многие еще помнят 5.1 «surround sound system», которая была популярна некоторое время.
Для реалистичного восприятия звука в наушниках у нас есть только два приемника звука (левый и правый). Но самое важное — источник звука. В случае VR симуляций — это звуковые эффекты.
Звуковые волны — непростое явление, так как они отражаются в пространстве и изменяются из-за различных материалов и других воздействий.
В реальном мире до тех пор, пока звуковая волна не нашла путь от источника до наших ушей, она значительно изменяется и получает, в зависимости от обстоятельств — например, когда мы сидим в ванной или стоим на вокзале — определенные характеристики.
Реальная жизнь формирует определенные ожидания к звуку, наш виртуальный мир должен соответствовать этим ожиданиям.
Такой подход очень наглядно представлен в следующем видео. Несмотря на то, что ты воспринимаешь видео в обычных наушниках, можно перенестись непосредственно на место событий благодаря качественной и реалистично записи звука. Ты даже можешь уловить местоположение источников звука, например, сигнал машины.
Из-за такой сложности правдоподобная симуляция звука на компьютере стоит целое состояние, необходимые мощности для расчета нескольких источников звука значительно превосходят средний компьютер.
Поэтому при разработке ПО прибегают к обману и в подходящий момент проигрывают предварительно записанные звуковые дорожки, к примеру, когда разбивается кружка.
Потом во время игры эти записи будут скорректированы в зависимости от окружения. Например, в большом помещении будет добавлено постепенное затухание звука при многократных отражениях (реверберация). В большинстве случаев этой подмены достаточно.
Датчики дают нам очень полезную информацию о точном положении головы в пространстве. Благодаря этому мы можем привязать звуковые эффекты к соответствующему источнику в виртуальной комнате, а ПО рассчитает направление и искажения.
Такую подмену часто называют «Location Based Sound». Она позволяет ощутить очень правдоподобный фоновый шум в VR. На практике качественные симуляции достигаются благодаря VR SDK от Oculus или Valve.
Все, что нам нужно сделать, это разместить звуковые эффекты в виртуальной комнате.
Затрагивая эту тему, стоит упомянуть о докладе на Oculus Connect 2, в 2015 году:
Увеличим погружение
После того, как мы внедрили на сцену звуковые эффекты при взаимодействии с предметами, можно сделать еще более глубокое погружение. В зависимости от проекта добавь мелочи или проделай обширную работу со звуком.
Также можно использовать положение и поворот контроллера для определенных эффектов. Разработчики из Hover Junkers использовали эту возможность, во время быстрого перемещения виртуального оружия (контроллера) можно услышать «swooosh» или дребезжание металла.
Эта классная идея подробно показана на видео:
Платформа, под которую разрабатывается проект, диктует различные ограничения. При разработке под Cardboard VR возможности производительности и памяти более скудные в сравнении с Vive VR.
Классные преимущества 3D звука и определения позиции тела можно использовать для привлечения внимания. Таким образом можно выделять важные моменты сценария или интерактива, чтобы пользователь не пропустил их и продолжил нормально ориентироваться в виртуальном мире.
Глубже погрузимся в тему
В данной статье мы только слегка затронули эту обширную и разностороннюю тему.
Для дальнейшего изучения материала настоятельно советую доклад Nicolas Tsingos с VISION SUMMIT 2016:
Также очень интересна статья Engadget
А в этой статье Todd Baker и Manesh Mistry — разработчики из Land’s End и Monument Valley — дают предметную информацию о звуковом дизайне в виртуальной реальности. Это стоит прочитать!
В следующей статье «VR-Design: User Interface» мы займемся интерфейсом в VR (взаимодействием человека и машины).
Автор: htc-cs