Виртуальная реальность
Дизайн в виртуальной реальности: Как сделать приложение, от которого не тошнит
Все постоянно рассуждают, какими должны быть устройства виртуальной реальности, спорят о производительности. Но новые VR-шлемы выходят так часто, что я не успеваю их тестировать и смотреть обзоры. А вот новых приложений и игр (особенно от инди-разработчиков), за которые хотелось бы заплатить деньги, больше не становится. Давайте разберемся, почему так?
26 июля 2018
Гарри Марковский
VR/AR-евангелист в CONTENTED
Конечно, причин много, но основная — в гонке за технологиями мы забываем про дизайн! Мне не круто в этих приложениях, я не чувствую погружения, не понимаю, что мне делать, что хотели от меня авторы. Если пользователя укачивает, когда он играет в вашу «леталку» или rollercoaster, вряд ли он вернется к вам во второй раз.

Мы в Contented точно знаем — дизайн и UX решают. Даже для мобильного телефона можно сделать красивый и крутой VR-экспириенс (можете убедиться в этом, если дочитаете до конца).

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

Все дело в измерениях
Для начала нужно сказать, что дизайн и проектирование виртуальной реальности — это абсолютно новое поле. Мы еще только учимся и создаем какие-то правила путем экспериментов. VR — это такой микс всего, что мы знали о дизайне до этого. Но нельзя просто взять и применить привычные в 2D-правила и гайды. Не забывайте, у нас теперь три измерения. Третье измерение все меняет. Скорее всего, в будущем у нас появятся отдельные полноценные инструменты для дизайна именно VR-среды.

О чем же должен помнить начинающий VR-разработчик?
01
Укачивание или Motion sickness

Находясь в виртуальной реальности, пользователь может чувствовать несоответствие между физическими и визуальными сигналами при движении. Например, в игре вы летите сквозь галактику со скоростью света, а в реальности сидите дома на стуле. Это несоответствие может вызвать тошноту, известную как «морская болезнь», укачивание или motion sickness. Такой опыт вряд ли принесет кому-то удовольствие. Как этого избежать? Google рекомендует запомнить:
Head tracking

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

В реальном мире мы чувствуем только ускорение и замедление, но не скорость. Когда вы летите в самолете, вы же не чувствуете, что он перемещается со скоростью 800 километров в час.

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

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

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

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

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

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

В таком случае нам помогут незаметные контекстуальные игровые события, например, цветы, которые вырастают, прокладывая дорогу и привлекая внимание пользователя к правильному пути. Эти механики нужно очень хорошо продумывать, чтобы не испортить иммерсивный процесс. Если цветы в поле — это норм, то в инопланетном пейзаже они уже не прокатят.
04
Интерактивные объекты и взаимодействие
В 3DoF VR (устройствах и приложениях с тремя степенями свободы: по оси x,y, z) используется пользовательский прицел (reticle), чтобы показать пользователю конкретную точку, куда он смотрит. Он помогает ориентироваться в пространстве, перемещаться и взаимодействовать с объектами. У прицела можно настроить различные реакции на игровые события. Вот несколько рекомендаций:

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

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

Ну и напоследок: виртуальная реальность – это такая штука, которую лучше один раз увидеть, чем сто раз услышать. Поэтому Google разработал и опубликовал для нас Cardboard Design Lab — иммерсивное путешествие по 10 основным правилам VR-дизайна и проектирования. Берите кардборд и скорее смотрите. Там же можно проверить на себе и почувствовать, что будет, если эти рекомендации нарушать.

Надеюсь, что материал был для вас полезным. Дерзайте, разрабатывайте, но не забывайте о комфорте своего пользователя. Ведь в конце концов все, что мы делаем — для него.

Подборка ссылок, которыми я пользовался при написании статьи, для дополнительного чтения:

Designing for Google Cardboard. Design Guidelines by Google

Developing for AR & VR is easy. It's design that's hard. By Joe Connolly

Design Practices in Virtual Reality. By Jonathan Ravasz
Хочешь найти крутую работу?
Иди учиться на VR-разработчика — это востребованная/ модная/ высокооплачиваемая профессия, которую реально освоить онлайн за пару месяцев!
Понравилось? Поделитесь с друзьями