Первый выпуск Monado, платфломы для устройств виртуальной реальности

Опубликован первый выпуск проекта Monado, нацеленного на создание открытой реализации стандарта OpenXR, который определяет универсальный API для создания приложений виртуальной и дополненной реальности, а также набор прослоек для взаимодействия с оборудованием, абстрагирующим особенности конкретных устройств. Стандарт подготовлен консорциумом Khronos, развивающим также такие стандарты, как OpenGL, OpenCL и Vulkan. Код проекта написан на языке Си и распространяется под совместимой с GPL свободной лицензией Boost Software License 1.0, основанной на лицензиях BSD и MIT, но не требующей упоминания при распространении производной работы в бинарном виде.

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