Общие сведения об архитектуре — MRTK3

Архитектура МРТК3

Одна из целей работы с MRTK3 заключается в том, чтобы применить все, что мы узнали с момента запуска MRTK2 еще в начале 2018 года, объединить это с работой, которая была проделана нашими отраслевыми партнерами по OpenXR и Unity, и сформировать новый подход, с сильной, масштабируемой основой, которая позволяет MRTK сосредоточиться больше на предоставлении дифференциаторов и общего улучшенного взаимодействия пользователей (и разработчиков!).

Методы ввода и взаимодействие

Общая архитектура стека входных данных MRTK3 основана на четырех базовых компонентах:

  1. OpenXR
    1. Спецификация Khronos
    2. Документация по подключаемому модулю Unity OpenXR
    3. Документация по подключаемому модулю OpenXR смешанной реальности
  2. Подсистемы Unity
  3. Входная система Unity
  4. Набор средств взаимодействия Unity's XR

Наряду с слоем определяемых MRTK интеракторов и подсистем предоставляются такие функции, как показывание пальцем и речь.

OpenXR

OpenXR — это интерфейс между приложением и системой среды выполнения XR, позволяющий вызывать общий набор функций в универсальном режиме и поддерживающий обработку зависящей от оборудования реализации с помощью среды выполнения XR. Внедрение этого наряду с системой ввода Unity в MRTK3 позволяет Unity обрабатывать больше кросс-платформенных и расширяемых входных данных, при этом MRTK3 помогает вам в создании широких возможностей на их основе.

Подсистемы

Подсистемы и Менеджер подсистем в Unity должны быть концептуально знакомы пользователям MRTK2, так как они новые "поставщики данных". Идея заключается в том, что различные платформы или службы могут предоставлять реализацию определенного типа подсистемы MRTK и работать, когда это необходимо, предоставляя данные MRTK3 и приложению в целом, как и поставщики данных различных систем в MRTK2. Так как мы сосредоточимся на OpenXR, факт состоит в том, что многие функции, охватывающиеся расширением EXT для разных поставщиков в OpenXR и нескольких подсистемах, не являются необходимыми, но расширения для конкретных поставщиков могут представлять ранние технологические достижения, которые мы хотим поддерживать.

Система ввода Unity

По сути, система ввода Unity также будет знакома пользователям профиля сопоставления контроллера MRTK2. Он предоставляет центральное место для сопоставления кнопок и других осей ввода на контроллере или руке с набором действий. Эти действия затем используются набором средств взаимодействия XR (XRI) Unity и MRTK3, поэтому объект, с которым выполняется взаимодействие, не заботится о том, что управляет им, просто это так.

Набор средств взаимодействия XR

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

См. также раздел