Впервые на русском: Документация Oculus для разработчиков. Поле зрения и масштаб

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

  1. Документация Oculus для разработчиков:
    1. Введение в рекомендации
    2. Бинокулярное зрение, стереоскопическая визуализация и индикаторы глубины
    3. Поле зрения и масштаб
    4. Методы рендеринга
    5. Движение
    6. Отслеживание
    7. «Болезнь симуляции»
    8. Пользовательский интерфейс
    9. Пользовательский ввод и навигация
    10. Заключение
    11. Введение в SDK для ПК
    12. Руководство разработчика
    13. Руководство по началу работы с ПК SDK
    14. Руководство ПК SDK для разработчика. Интеграция LibOVR
    15. Инициализация и перечень сенсоров
    16. Рендеринг в Oculus Rift
    17. Расширенная настройка рендеринга
    18. Управление связью с виртуальной реальностью
    19. Система безопасности Oculus Guardian
    20. Аудио Oculus Rift
    21. Контроллеры Oculus Touch
    22. Дополнительная информация об Oculus Touch
    23. Примеры использования SDK и геймпада
    24. Оптимизация вашего приложения
    25. Подключение контроллеров Oculus Touch
    26. Асинхронный SpaceWarp
    27. Дополнительная информация о подключении контроллеров Oculus Touch
    28. Справочная информация

Чтобы оставаться в курсе новостей о виртуальной реальности, подписывайтесь на наш Telegram!

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

Поле зрения может относиться к разным понятиям, которые мы уточним в первую очередь. Если мы используем термин «поле зрения дисплея» (dFOV), мы имеем в виду ту часть физического поля пользователя, которая занимается контентом виртуальной реальности. Это физическая характеристика, относящаяся к оборудованию и его оптике. Другой тип поля зрения – это поле зрения камеры (cFOV), относящееся к тому диапазону виртуального мира, который видят камеры рендеринга в любой момент. Оба понятия поля зрения определяются угловым измерением вертикальных, горизонтальных и/или диагональных размеров.

При обычной графике на компьютерном экране, как правило, вы можете установить поле зрения камеры так, как вам угодно: начиная с «рыбьего глаза» (с широким углом обзора) и заканчивая телефотографическим (с узким углом зрения). Несмотря на то, что люди могут испытывать болезнь движения, вызываемую изображением на дисплее вследствие игры на экране [1], обычно это оказывает очень малое влияние на большинство пользователей, поскольку изображение ограничено объектом в общем поле зрения окружающей среды наблюдателя. Периферийное зрение пользователей компьютера может видеть пространство комнаты, в которой пользователь сидит перед компьютером, и монитор при этом не реагирует на движения головы. Хотя изображение на экране и может быть захватывающим, мозг обычно не удаётся ввести в заблуждение, убедив его, что изображение действительно реальное, а потому различия между полем зрения камеры и полем зрения дисплея не вызывает проблем у большинства людей.

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

В Oculus Rift максимальное значение поля зрения дисплея определяется экраном, линзами и тем, насколько близко пользователь устанавливает при настройке линзы устройства к своим глазам (в целом, чем ближе глаза к объективу, тем шире поле зрения дисплея). Утилита конфигурации измеряет максимальное поле зрения дисплея, которое может видеть пользователь, и эта информация сохраняется внутри его профиля. В SDK есть встроенное, рекомендуемое значение поле зрения камеры, которое соответствует полю зрения экрана, получаемое на основе этой информации.

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

Удалось выяснить, что отклонения между полем зрения дисплея и полем зрения камеры могут вызывать дискомфорт [2] (хотя некоторые исследования по этой теме были смешанными [3]). Если масштаб отклоняется от значения в 1,0, значения коррекции искажения приводят к тому, что искажается рендеринг изображения. Манипуляции с полем зрения камеры также могут вызывать «болезнь симуляции» и даже приводить к дезадаптации вестибулярно-окулярного рефлекса, который позволяет глазам стабильно фиксироваться на объекте во время движений головы. Неправильная адаптация может привести к дискомфорту пользователя во время опыта в виртуальной реальности, а также к неприятному воздействию на визуально-моторное функционирование после того, как Oculus Rift будет снят.

SDK позволяет манипулировать полем зрения камеры и полем зрения дисплея без изменения масштаба, это можно делать путём добавления чёрных границ вокруг видимого изображения. Использование меньшего видимого изображения может помочь повысить производительность рендеринга или производительность специальных эффектов. Вам необходимо иметь в виду: если вы выберете 40° видимого изображения, большая часть экрана будет черной – так и должно быть по задумке, это не является ошибкой. Также обратите внимание на то, что уменьшение размеров видимого изображения будет требовать от пользователя более резких движений головой по сравнению с тем, если бы видимое изображение было увеличено; это может привести к усталости мышц и «болезни симуляции».

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

 

[1] Стоффреген, T. A., Фоглуа, Э., Ёсида, K., Флэнэган, M. Б., Мерки, O. (2008). «Болезнь движения» и постуральное влияние в консольных видеоиграх. Человеческие факторы, 50, 322-331.

 

[2] Дрейпер, M. Х., Виир, Э. С., Фёрнесс, T. A., Гоурон, В. Д. (2001). Эффекты масштабирования изображения и временной задержки системы при «болезни симуляции» в виртуальной среде. Человеческие факторы, 43(1), 129-146.

 

[3] Мосс, Д.Д., Мут, Э. Р. (2011). Характеристики шлемов виртуальной реальности и их влияние на «болезнь симуляции». Человеческие факторы: Журнал человеческих факторов и Эргономического общества, 53(3), 308–319.

 

Примечание: Данный материал представлен для ознакомления, при перепечатывании ссылка на оригинал обязательна. Если вы хотите принять участие в помощи проекту, пишите на editor@vrgeek.ru

 

Если вы разработчик и вы хотите продолжить свою карьеру в лучших компаниях России, пишите на editor@vrgeek.ru с пометкой «Работа мечты», и мы поможем вам с этим.