Данная статья является первой в цикле про качественную разработку VR-проектов. Ссылки на другие материалы можно будет найти в обзорной статье.
Надевая 3D очки, пользователи могут погрузиться в виртуальный мир. При этом движения головы в точности переносятся в VR, в результате чего создается ощущение присутствия.
Этот факт означает, что при проектировании дизайна наших фильмов, игр и приложений нужно мыслить по-другому, так как у нас больше нет контроля над камерой.
Это и является одним из самым значимых отличий VR от классических СМИ. Использование виртуальной камеры ставит перед нами новые сложные задачи, и тут стоит быть осторожным.
Так как, если на этом этапе мы примем неверные решения, то это приведет к возникновению у пользователя тошноты и головной боли, к так называемой «Motion Sickness» или VR болезни.
Принципиально важно, чтобы 3D мир и все виртуальные элементы всегда реагировали на повороты головы пользователей. И это относится не только непосредственно к игровому миру.
Также это касается и меню, когда игра стоит на паузе или когда происходит переход на следующий уровень, любое движение головы всегда должно быть полностью перенесено в виртуальный мир.
В SteamVR API дошли до того, что стали показывать пустую оклеенную плиткой комнату в те моменты, когда VR приложение недостаточно производительно, чтобы просчитывать необходимое число кадров в секунду. Это гарантирует, что в поле зрения не возникнет неподвижной «зависшей» картинки, и это состояние не собьет с толку пользователя.
Этот принцип взаимодействия привносит и новые проблемы. Так как, когда мы не можем управлять камерой, игроки могут, к примеру, засунуть свою голову в стену или даже вбежать в нее.
В классических играх персонажа можно просто остановить, а в VR у нас нет такой возможности. Во всяком случае, без негативных эффектов.
Однако, во-первых, благодаря глубокому погружению в виртуальный мир пользователи очень редко хотят пройти через виртуальную стену. Слишком велико внутреннее сопротивление подсознания.
И, во-вторых, у нас есть технические возможности для того, чтобы лишить такого жульничества игроков. Один из вариантов, так называемый портал в стене, описан в этой статье «Сквозь стены: преодоление преград».
Еще одна возможность — посмотреть на эту особенность как на преимущество и воспользоваться ей в виртуальном мире. К примеру, Audi так и сделала в своей VR презентации нового автомобиля. Тот, кто засунет голову в капот машины, будет удивлен прекрасным отображением внутренностей автомобиля.
Ауди позволяет для себя открыть внутренний мир автомобиля
Свобода передвижения в неограниченном пространстве добавляет следующую практическую проблему: как мы обезопасим пользователя от того, чтобы он не споткнулся о свое кресло или даже не врезался на полной скорости в стену своей комнаты?
Самое лучшее, на данный момент, решение — система сопровождения (Chaperone System), которая выглядит как уведомление в виртуальном мире, когда мы находимся слишком близко к предметам из нашей реальной комнаты. Таким образом, мы всегда можем быть уверены в том, что не покалечим ни себя, ни кого-то другого.
Из-за такого рода проблем в Vive была разработана прекрасная фича: встроенная в VR-очки камера. При необходимости мы всегда можем разработать свою собственную реализацию подобных уведомлений. К примеру, для большего стилевого соответствия дизайну нашего виртуального мира.
Дела обстоят так, что при разработке своих VR-приложений ты, скорее всего, будешь управлять камерой, и тут есть пара основополагающих правил.
Во-первых ты никогда не должен менять поворот(rotation) камеры или производить подобные манипуляции. Во-вторых едва ли следует менять позицию(position) камеры, во всяком случае движение должно быть очень медленным и иметь четкое направление, как будто платформа, на которой мы стоим, движется, более того положение головы должно быть воспроизведено очень точно.
Группа VR-разработчиков Everest реализовала передвижение камеры именно так и к тому же добавила еще одну интересную деталь: во время передвижения камеры VR сцена сменяется обычной 2D сценой. Только в сценах с взаимодействием пользователь снова видит картинку на 360 градусов.
Один из хороших подходов — это так называемая моргающая система (Blink System). Такой подход предполагает, что пользователи переносятся в виртуальном мире прямо на новую точку.
При телепортации картинка на мгновение становится черной. Это ощущается, как моргание, и выглядит на удивление хорошо. Denny Unger из Cloudhead Games очень наглядно объясняет этот подход в следующем видео:
Игра Budget Cuts переняла и усовершенствовала данный подход и внедрила его в игровую механику. Ты можешь перенестись на новую позицию с помощью маленького портала, который прикреплен к контроллеру, и просматривать пространство с разных точек зрения.
Мы не можем контролировать угол обзора и границы видимой области, поэтому необходимо искать другие средства для того, чтобы объяснить сценарий нашего VR-приложения пользователю.
Прежде всего, для данных целей мы можем позаимствовать проверенные опытом методы актеров театра и цирка. Так как именно в этих сферах привлечение внимания всегда было важной задачей, потому что некоторые художественные элементы и важные сценарные моменты не должны ускользать от зрителя.
Продуманное использование света, звука и движения является крайне важным аспектом, и мы затронем эту обширную тему более подробно в будущих статьях. Грамотное использование этих деликатных техник позволяет создавать невероятно захватывающие и живые проекты, в которых ты можешь использовать преимущества нового СМИ на полную мощь.
Знания об особенностях обращения с виртуальной камерой помогут нам разобраться с техническими принципами VR-разработки в следующих статьях.
Ведь когда мы понимаем, что происходит у нас за спиной, мы знаем, на что нужно обращать внимание при разработке высококачественных VR-проектов.
Далее мы изучим основы оптимизации в статье «Рендеринг и оптимизация в VR-разработке».
Надевая 3D очки, пользователи могут погрузиться в виртуальный мир. При этом движения головы в точности переносятся в VR, в результате чего создается ощущение присутствия.
Этот факт означает, что при проектировании дизайна наших фильмов, игр и приложений нужно мыслить по-другому, так как у нас больше нет контроля над камерой.
Это и является одним из самым значимых отличий VR от классических СМИ. Использование виртуальной камеры ставит перед нами новые сложные задачи, и тут стоит быть осторожным.
Так как, если на этом этапе мы примем неверные решения, то это приведет к возникновению у пользователя тошноты и головной боли, к так называемой «Motion Sickness» или VR болезни.
Принципиально важно, чтобы 3D мир и все виртуальные элементы всегда реагировали на повороты головы пользователей. И это относится не только непосредственно к игровому миру.
Также это касается и меню, когда игра стоит на паузе или когда происходит переход на следующий уровень, любое движение головы всегда должно быть полностью перенесено в виртуальный мир.
В SteamVR API дошли до того, что стали показывать пустую оклеенную плиткой комнату в те моменты, когда VR приложение недостаточно производительно, чтобы просчитывать необходимое число кадров в секунду. Это гарантирует, что в поле зрения не возникнет неподвижной «зависшей» картинки, и это состояние не собьет с толку пользователя.
Свобода действий привносит новые проблемы
Этот принцип взаимодействия привносит и новые проблемы. Так как, когда мы не можем управлять камерой, игроки могут, к примеру, засунуть свою голову в стену или даже вбежать в нее.
В классических играх персонажа можно просто остановить, а в VR у нас нет такой возможности. Во всяком случае, без негативных эффектов.
Однако, во-первых, благодаря глубокому погружению в виртуальный мир пользователи очень редко хотят пройти через виртуальную стену. Слишком велико внутреннее сопротивление подсознания.
И, во-вторых, у нас есть технические возможности для того, чтобы лишить такого жульничества игроков. Один из вариантов, так называемый портал в стене, описан в этой статье «Сквозь стены: преодоление преград».
Еще одна возможность — посмотреть на эту особенность как на преимущество и воспользоваться ей в виртуальном мире. К примеру, Audi так и сделала в своей VR презентации нового автомобиля. Тот, кто засунет голову в капот машины, будет удивлен прекрасным отображением внутренностей автомобиля.
Ауди позволяет для себя открыть внутренний мир автомобиля
Врезаться в настоящую стену
Свобода передвижения в неограниченном пространстве добавляет следующую практическую проблему: как мы обезопасим пользователя от того, чтобы он не споткнулся о свое кресло или даже не врезался на полной скорости в стену своей комнаты?
Самое лучшее, на данный момент, решение — система сопровождения (Chaperone System), которая выглядит как уведомление в виртуальном мире, когда мы находимся слишком близко к предметам из нашей реальной комнаты. Таким образом, мы всегда можем быть уверены в том, что не покалечим ни себя, ни кого-то другого.
Из-за такого рода проблем в Vive была разработана прекрасная фича: встроенная в VR-очки камера. При необходимости мы всегда можем разработать свою собственную реализацию подобных уведомлений. К примеру, для большего стилевого соответствия дизайну нашего виртуального мира.
Управляем камерой, когда это необходимо
Дела обстоят так, что при разработке своих VR-приложений ты, скорее всего, будешь управлять камерой, и тут есть пара основополагающих правил.
Во-первых ты никогда не должен менять поворот(rotation) камеры или производить подобные манипуляции. Во-вторых едва ли следует менять позицию(position) камеры, во всяком случае движение должно быть очень медленным и иметь четкое направление, как будто платформа, на которой мы стоим, движется, более того положение головы должно быть воспроизведено очень точно.
Группа VR-разработчиков Everest реализовала передвижение камеры именно так и к тому же добавила еще одну интересную деталь: во время передвижения камеры VR сцена сменяется обычной 2D сценой. Только в сценах с взаимодействием пользователь снова видит картинку на 360 градусов.
Еще один хороший подход — моргание
Один из хороших подходов — это так называемая моргающая система (Blink System). Такой подход предполагает, что пользователи переносятся в виртуальном мире прямо на новую точку.
При телепортации картинка на мгновение становится черной. Это ощущается, как моргание, и выглядит на удивление хорошо. Denny Unger из Cloudhead Games очень наглядно объясняет этот подход в следующем видео:
Игра Budget Cuts переняла и усовершенствовала данный подход и внедрила его в игровую механику. Ты можешь перенестись на новую позицию с помощью маленького портала, который прикреплен к контроллеру, и просматривать пространство с разных точек зрения.
Привлекаем внимание
Мы не можем контролировать угол обзора и границы видимой области, поэтому необходимо искать другие средства для того, чтобы объяснить сценарий нашего VR-приложения пользователю.
Прежде всего, для данных целей мы можем позаимствовать проверенные опытом методы актеров театра и цирка. Так как именно в этих сферах привлечение внимания всегда было важной задачей, потому что некоторые художественные элементы и важные сценарные моменты не должны ускользать от зрителя.
Продуманное использование света, звука и движения является крайне важным аспектом, и мы затронем эту обширную тему более подробно в будущих статьях. Грамотное использование этих деликатных техник позволяет создавать невероятно захватывающие и живые проекты, в которых ты можешь использовать преимущества нового СМИ на полную мощь.
Понимание технологии
Знания об особенностях обращения с виртуальной камерой помогут нам разобраться с техническими принципами VR-разработки в следующих статьях.
Ведь когда мы понимаем, что происходит у нас за спиной, мы знаем, на что нужно обращать внимание при разработке высококачественных VR-проектов.
Далее мы изучим основы оптимизации в статье «Рендеринг и оптимизация в VR-разработке».
Поделиться с друзьями
SystemXFiles
По поводу раздела Врезаться в настоящую стену.
Система уведомления представляется так: при приближении к реальной стене реальность начинает словно просачивается в виртуальный мир. Например, виртуальный мир становится «прозрачным» (или разрушается) и ты видишь реальную обстановку вокруг себя.
Жаль, что такое возможно полноценно реализовать только с нормальной камерой или с дополненной реальностью.
BasmanovDaniil
Уже есть такое. В настройках Vive можно включить использование картинки с камеры для chaperone.
syamskoy
В HTC Vive довольно годно это реализовано. При подходе к настоящей стене, в виртуалном мире начинает появляться на ее месте светящаяся сетка (причем на регулируется в настройках: ее цвет, плотность, вид). Это очень помогает не врезаться в реальные предметы. Плюс на этом же шлеме есть функция наложения камеры и формирования вирт.пространства: нажав быстро два раза Steam клавишу (внизу на контроллере, может как-то по другому называется) можно увидеть проекцию своей комнаты и встать куда нужно. И даже тут есть еще и третий вариант — это включить обычную камеру на шлеме и смотреть через нее — но это не особо удобно.
Но в основном хватает первой реализации. Хотя бывают моменты в игре, когда экшен на столько захватывает, что игрок попросту начинает игнорить эту сетку:)