SteamVR 1.26 получил автоматическую перепривязку контроллеров, оптимизации и исправления ошибок

179

Valve выпустила стабильную версию SteamVR 1.26. В ней инженеры компании поработали над автоматической перепривязкой контроллеров, расширив совместимость игр и устройств управления. Кроме этого обновлён интерфейс, внесены визуальные изменения в настройки раскладки, а в меню SteamVR появилась ручка, с помощью которой его проще перемещать в пространстве.

Новый режим совместимости позволяет пользователям настраивать раскладку контроллера таким образом, чтобы эмулировать ожидаемую игрой модель. Если в игре нет раскладки для нужного контроллера, SteamVR автоматически создаст новую раскладку на основе настроек одной из распространённых моделей и запустит эмуляцию. 

Разработчики драйверов для контроллеров могут предоставить список моделей, раскладки которых они хотят использовать для перепривязки, а также инструкции по её выполнению. Например, если в игре есть раскладка для Oculus Touch, а вы используете контроллер от платформы Windows Mixed Reality, SteamVR привяжет действия, соответствующие нажатию на курок Touch, к действиям, выполняемым при нажатии на кнопку хвата у контроллера Windows Mixed Reality. 

Если разработчики игры создадут собственную раскладку для вашего контроллера, SteamVR переключится на неё, как только она станет доступной. Эта функция будет работать во всех играх, где используются OpenXR и ввод SteamVR.

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

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

Информацию о создании файла перепривязки можно почерпнуть в документации.

Полный список изменений SteamVR 1.26

SteamVR

  • Добавлена автоматическая перепривязка для контроллеров, у которых нет собственных раскладок. В играх, использующих систему ввода SteamVR и стандарт OpenXR, платформа будет пытаться произвести перепривязку на основе раскладки поддерживаемого контроллера
  • В меню SteamVR появилась ручка, позволяющая перемещать его в пространстве. Положение меню сбрасывается при каждом его вызове
  • Теперь при нажатии кнопки «Центрировать заново» в главном меню происходит центрирование и для сидячего, и для стоячего положения, а не только для текущего
  • Исправлена ошибка, из-за которой интерфейс настроек сбивался, если в нём присутствовали аудиоустройства с эмодзи в названии
  • Исправлена ошибка, из-за которой на устройствах с видеокартами AMD падала частота кадров. Это происходило, если пользователь отключал и заново подключал шлем от стороннего производителя после начала сеанса
  • Добавлены новые роли для трекера: запястье (левое/правое) и лодыжка (левая/правая)
  • Добавлена поддержка массива autoremappings в файле Automatic Rebinding для упрощения перепривязки компонентов
  • Обновлён интерфейс у настроек раскладки
  • Если пользователь не привязал требуемое действие, появится ошибка
  • Повышена производительность при загрузке раскладок из мастерской
  • Решена проблема, из-за которой кнопка «Показать старый интерфейс раскладок» не работала в меню настроек контроллера

OpenXR

  • Кнопка «Центрировать заново» теперь действует в приложениях, созданных на основе OpenXR
  • Событие XrEventDataReferenceSpaceChangePending теперь отправляется при повторном центрировании игровой зоны
  • Теперь приложения на основе OpenXR, использующие XR_REFERENCE_SPACE_TYPE_STAGE при вызове xrLocateViews, немедленно начинают использовать те же правила видимости пространственной сетки, что и приложения на основе OpenVR, когда пользователь в стоячем положении (то есть сетка отображается, когда очки или контроллеры приближаются к точке отчёта)
  • Теперь приложения на основе OpenXR, использующие XR_REFERENCE_SPACE_TYPE_LOCAL дольше 3 секунд при вызове xrLocateViews, немедленно начинают использовать те же правила видимости пространственной сетки, что и приложения на основе OpenVR, когда пользователь в сидячем положении (то есть сетка не будет отображаться, если пользователь находится в радиусе 1 метра от точки отсчёта)
  • Свойство сеанса runtimeVersion теперь соответствует текущей версии SteamVR
  • Сеансы снова можно создавать без активных очков. Это не связано с работой в режиме без очков и предназначено для того, чтобы приложение могло сделать нужные вызовы и определить, что подключённых очков нет
  • Устранён сбой, который возникал в некоторых играх на движке Unity, когда не было активных очков
  • Внедрено расширение XR_HTC_vive_wrist_tracker_interaction
  • Исправлена проверка на совместимость (теперь правильно проверяются допустимые, но неподдерживаемые типы конфигурации отображения, а также верно распознаётся отрицательный ввод xrTime)

Не пропускайте важнейшие новости о дополненной и виртуальной реальности — подписывайтесь на Голографику в Telegram, ВК и Twitter! Поддержите проект на Boosty.

Далее: Угловое разрешение: почему для очков оно важнее, чем пиксели на дисплее