Drugie wydanie Monado, platformy dla urządzeń wirtualnej rzeczywistości
Firma Collabora представила wydanie projektu Monado 0.2, mające na celu stworzenie otwartej implementacji standardu OtwórzXR. Monado zapewnia środowisko wykonawcze w pełni zgodne z wymaganiami OpenXR, które można wykorzystać do organizacji pracy z rzeczywistością wirtualną i rozszerzoną na smartfonach, tabletach, komputerach PC i wszelkich innych urządzeniach. Standard OpenXR został przygotowany przez konsorcjum Khronos i definiuje uniwersalne API do tworzenia aplikacji wirtualnej i rozszerzonej rzeczywistości, a także zestaw warstw do interakcji ze sprzętem, który abstrahuje cechy konkretnych urządzeń. Kod projektu jest napisany w języku C i dystrybuowane przez na bezpłatnej licencji Boost Software 1.0, zgodnej z licencją GPL.
Dodane ulepszenia obejmują:
Composite Server obsługuje teraz renderowanie wielowarstwowe, umożliwiając aplikacjom hostowanie wielu struktur XrKompozycjaLayerProjekcja и XrSkładWarstwaQuad. Praca z wieloma warstwami jest ważna w przypadku aplikacji, które wykorzystują cztery warstwy do renderowania interfejsów użytkownika, ale jest także podstawą do dalszej obsługi aplikacji z interfejsem nałożonym na górę sceny, takich jak xrdesktop lub Pluton VR.
Serwer złożony i sterowniki są umieszczane w oddzielnych procesach serwisowych. Praca w toku aby zapewnić możliwość podłączenia wielu aplikacji OpenXR do jednej instancji usługi Monado i jednoczesnej ich wizualizacji za pomocą rozszerzenia XR_EXTX_overlay.
Zapewnia obsługę kontrolerów Vive Wand i Valve Index oraz ich wykorzystanie do sterowania ruchem z trzema stopniami swobody (3DOF, ruch w trzech kierunkach). W nadchodzących miesiącach planujemy dodać obsługę sześciu stopni swobody (6DOF, do przodu/do tyłu, góra/dół, lewo/prawo, odchylenie, nachylenie, przechylenie) za pomocą systemu śledzenia Lighthouse.
Dodano obsługę Bluetooth LE, która jest zawarta w sterowniku kontrolera Google Daydream 3DOF.
Dodano sterownik Arduino do eksperymentów przy tworzeniu własnych kontrolerów;
Sterownik systemu śledzenia pozycji otwartej jest zintegrowany z konstrukcją główną libsurvive.
Interfejs użytkownika debugowania obsługuje teraz niestandardowe wykresy, które w ich obecnej formie służą do wizualizacji obciążenia procesora podczas renderowania.
Monado-gui obsługuje teraz przechowywanie ustawień w katalogach $XDG_CONFIG_HOME/monado i $HOME/.config/monado. Dodano możliwość konfiguracji kamer stereo z interfejsem USB dla PSMV (PlayStation Move) i PSVR (PlayStation VR).
System montażu został przerobiony. Dodany Repozytorium PPA dla Ubuntu z pakietami Monado, OpenXR-SDK i regułami udev xr-hardware.
Dodano obsługę uruchamiania usługi monado poprzez aktywację gniazda w systemd.
Skład platformy:
Silnik widzenia przestrzennego (śledzenie obiektów, wykrywanie powierzchni, rekonstrukcja siatki, rozpoznawanie gestów, śledzenie wzroku);
Silnik do śledzenia postaci (stabilizator żyroskopowy, predykcja ruchu, kontrolery, optyczne śledzenie ruchu przez kamerę, śledzenie pozycji na podstawie danych z kasku VR);
Serwer kompozytowy (tryb wyjścia bezpośredniego, przekazywanie wideo, korekcja obiektywu, kompozycja, tworzenie przestrzeni roboczej do jednoczesnej pracy z kilkoma aplikacjami);
Silnik interakcji (symulacja procesów fizycznych, zestaw widżetów i zestaw narzędzi do zastosowań w wirtualnej rzeczywistości);
Oprzyrządowanie (kalibracja sprzętu, instalacja granice ruchu).
Najważniejsze cechy:
Sterownik do kasków wirtualnej rzeczywistości HDK (Zestaw programisty OSVR Hacker) i HMD do PlayStation VR, a także dla kontrolerów PlayStation Move i Brzytwa Hydra.
Sterownik do okularów rozszerzonej rzeczywistości North Star.
Sterownik dla systemu śledzenia pozycji Intel RealSense T265.
zestaw reguł udev aby skonfigurować dostęp do urządzeń rzeczywistości wirtualnej bez konieczności uzyskiwania uprawnień roota.
Komponenty do śledzenia ruchu ze strukturą do filtrowania i przesyłania strumieniowego wideo.
System śledzenia znaków o sześciu stopniach swobody (6DoF, do przodu/do tyłu, góra/dół, lewo/prawo, odchylenie, nachylenie, przechylenie) dla kontrolerów PSVR i PS Move.
Moduły do integracji z graficznymi API Vulkan i OpenGL.
Tryb bezgłowy.
Zarządzanie interakcją przestrzenną i punktem widzenia.
Podstawowa obsługa synchronizacji ramek i wprowadzania informacji (akcji).
Gotowy serwer kompozytowy obsługujący bezpośrednie wyjście do urządzenia z pominięciem systemowego serwera X. Zapewnia shadery dla Vive i Panonarzędzia. Obsługiwane są warstwy projekcyjne.