Monado предоставляет runtime, полностью соответствующий требованиям OpenXR, который может использоваться для организации работы с виртуальной и дополненной реальности на смартфонах, планшетах, ПК и любых других устройствах. В рамках проекта развивается несколько базовых подсистем:
- Движок пространственного зрения (отслеживание объектов, определение поверхностей, реконструкция мешей, распознавание жестов, отслеживания движения глаз);
- Движок для отслеживания персонажа (гиростабилизатор, предсказание движений, контроллеры, оптическое отслеживание движений через камеру, отслеживание позиции на основе данных от VR-шлема);
- Композитный сервер (режим прямого вывода, проброс видео, корректировка линз, композитинг, формирование рабочего пространства для одновременно работы с несколькими приложениями);
- Движок взаимодействия (симуляция физических процессов, набор виджетов и тулкит для приложений виртуальной реальности);
- Инструментарий (калибровка оборудования, установка границ перемещения).
Первый выпуск рассматривается как экспериментальный и нацеленный на начало знакомства разработчиков с платформой, но имеющий ряд ограничений, таких как возможность работы только в Linux (поддержка других ОС ожидается в будущем). В текущем состоянии Monado уже позволяет создавать приложения и отслеживать вращение на поддерживаемых устройствах при помощи OpenHMD, а также предоставляет возможность прямого отображения (Direct Mode) для вывода на устройства виртуальной реальности минуя графический стек операционной системы.
Основные возможности:
- Наличие драйверов для шлемов виртуальной реальности HDK (OSVR Hacker Developer Kit) и PlayStation VR HMD, а также для контроллеров PlayStation Move и Razor Hydra.
- Возможность использования оборудования, поддерживаемого проектом OpenHMD.
- Драйвер для очков дополненной реальности North Star.
- Драйвер для системы отслеживания позиции Intel RealSense T265.
- Набор udev-правил для настройки доступа к устройствам виртуальной реальности без получения полномочий root.
- Компоненты для отслеживания движения с фреймворком для фильтрации и потоковой передачи видео.
- Система отслеживания с шестью степенями свободы (6DoF, вперёд/назад, вверх/вниз, влево/вправо, рыскание, тангаж, крен) для контроллеров PSVR и PS Move.
- Модули для интеграции с графическими API Vulkan и OpenGL.
- Безэкранный режим (Headless).
- Управление пространственным взаимодействием и точкой обзора.
- Базовая поддержка синхронизации кадров и ввода (действий)
- Готовый композитный сервер, поддерживающий прямой вывод на устройство, минуя системный X-сервер. Предоставляются шейдеры для Vive и Panotools. Поддержка проекционных слоёв.
Источник: http://www.opennet.ru/opennews/art.shtml?num=52428