Публикувана е версия на проекта Monado 25.0.0, който развива отворената реализация на стандарта OpenXR. Стандартът OpenXR е подготвен от консорциума Khronos и определя универсален API за създаване на приложения за виртуална и добавена реалност, както и набор от слоеве за взаимодействие с оборудването. Monado предоставя runtime, който изцяло отговаря на изискванията на OpenXR и може да се използва за организиране на работата с виртуална и добавена реалност на смартфони, таблети, PC и всякакви други устройства. Кодът на проекта е написан на C и се разпространява под свободната лицензия Boost Software License 1.0, съвместима с GPL.
Състав на платформата:
- Двигател за пространствено виждане, извършващ задачи като проследяване на обекти, определяне на повърхности, реконструкция на мрежи, разпознаване на жестове и проследяване на движението на очите.
- Двигател за проследяване на персонажа, предлагащ компоненти за предсказване на движения, оптично проследяване на движения чрез камера, проследяване на позицията въз основа на данни от VR шлема, гиро стабилизатор и контролери.
- Композитен сървър, поддържащ композитинг, режим на директен изход, пропускане на видео, корекция на лещите и формиране на работно пространство за едновременно работа с множество приложения.
- Двигател за взаимодействие, предоставящ набор от инструменти и тулкит за приложения за виртуална реалност, включващ инструменти за симулация на физични процеси.
- Инструментариум за калибриране на оборудването и определяне на границите на движение.
Основни функции:
- Драйвери за VR шлемове HDK (OSVR Hacker Developer Kit), PlayStation VR HMD, SteamVR, Panotools (PSVR), различни модели Vive и устройства, за които има драйвери OpenHMD.
- Драйвер за очила за добавена реалност North Star.
- Драйвер за системи за проследяване на позиция, като Intel RealSense T265.
- Набор от udev правила за настройка на достъп до устройства за виртуална реалност без привилегии на root.
- Компоненти за проследяване на движението с рамка за филтриране и стрийминг на видео.
- Система за проследяване на персонажа с шест степени на свобода (6DoF, напред/назад, нагоре/надолу, наляво/надясно, наклон, наглас, завой) за контролери PSVR и PS Move.
- Модули за интеграция с графични API Vulkan и OpenGL.
- Безекранен режим (Headless).
- Управление на пространственото взаимодействие и точката на гледане.
- Основна поддръжка за синхронизация на кадри и въвеждане на информация (действия).
- Готов композитен сървър, поддържащ директен изход на устройството. Предоставят се шейдъри за Vive и Panotools. Налице е поддръжка на проекционни слоеве.

Сред промените в новото издание:
- Разширени вътрешни програмни интерфейси XRT (XRT Runtime), които абстрахират нискоуровневите особености на взаимодействието с хардуера. Добавен е метод xrt_instance_android и заглавен файл xrt/xrt_android.h с повиквания за платформата Android. В xrt_compositor са добавени функции за управление на честотата на опресняване на екрана. Добавена е поддръжка на разширението XR_FB_face_tracking2 и възможност за активиране в движение на разширена функционалност, като управление чрез проследяване на движението на очите.
- Добавени са функции в libmonado за определяне на състоянието на заряда на батерията и получаване на свойства на устройствата, свързани с проследяване на движения.
- В State Trackers е реализирано OpenXR- разширение XR_EXT_active_action_set_priority, осигурена е поддръжка на спецификацията OpenXR 1.1.47 и добавена е възможност за включване и изключване на разширени възможности, като проследяване на движението на очите.
- Натоварването на CPU в драйверите за платформата Android е намалено.
- В драйвера, използващ OpenHMD, е добавена поддръжка на неофициалния API Haptics за устройства Oculus Rift CV1.
- В драйвера за симулация е добавена поддръжка на маски за видимост, за да се управлява кои обекти ще са видими в даденото око.
- Добавена е поддръжка на 3D шлемовете HP Reverb G2 Omnicept и Acer AH100.
- В композитния сървър Реализирана е поддръжка за динамична промяна на честотата на опресняване на екрана на платформата Android. Добавена е променлива на околната среда WAYLAND_CONNECTOR за избор на изходно устройство в среди базирани на Wayland.
Източник: opennet.ru
