De release van het Monado-project 25.0.0 is gepubliceerd, dat een open implementatie van de OpenXR-standaard ontwikkelt. De OpenXR-standaard is voorbereid door het Khronos-consortium en definieert een universele API voor het creƫren van virtuele en augmented reality-applicaties, evenals een set lagen voor interactie met hardware. Monado biedt een runtime die volledig voldoet aan de eisen van OpenXR en kan worden gebruikt voor het faciliteren van virtuele en augmented reality-ervaringen op smartphones, tablets, pc's en andere apparaten. De code van het project is geschreven in de programmeertaal C en wordt verspreid onder de gratis Boost Software License 1.0, die compatibel is met GPL.
Samenstelling van het platform:
- Een engine voor ruimtelijk inzicht, die taken uitvoert zoals objecttracking, oppervlakdetectie, mesh-reconstructie, gebarenherkenning en oogbewegings-tracking.
- Een engine voor het volgen van personages, die componenten biedt voor het voorspellen van bewegingen, optische tracking door middel van camera's, en positie-tracking op basis van gegevens van VR-headsets, gyrostabilisatoren en controllers.
- Compositie server, die compositing, rechtstreekse output, videopassthrough, lenscorrectie ondersteunt en een werkruimte vormt voor het gelijktijdig werken met meerdere applicaties.
- Een interactie-engine die een set widgets en een toolkit biedt voor virtuele realiteit-applicaties, evenals tools voor het simuleren van fysieke processen.
- Een toolkit voor het calibreren van apparatuur en het bepalen van bewegingsgrenzen.
Belangrijkste mogelijkheden:
- Drivers voor virtual reality-headsets zoals de HDK (OSVR Hacker Developer Kit), PlayStation VR HMD, SteamVR, Panotools (PSVR), diverse modellen van Vive en apparaten waarvoor drivers bestaan in OpenHMD.
- Een driver voor de augmented reality-bril North Star.
- Een driver voor position tracking-systemen zoals de Intel RealSense T265.
- Een set udev-regels voor het instellen van toegang tot virtual reality-apparaten zonder root-rechten.
- Componenten voor bewegingstracking met een framework voor filtering en videostreaming.
- Een character tracking-systeem met zes vrijheidsgraden (6DoF, vooruit/achteruit, omhoog/omlaag, links/rechts, yaw, pitch, roll) voor PSVR- en PS Move-controllers.
- Modulen voor integratie met grafische API's Vulkan en OpenGL.
- Headless modus.
- Beheer van ruimtelijke interacties en het gezichtspunt.
- Basis ondersteuning voor frame synchronisatie en invoer van informatie (acties).
- Kant-en-klaar samengesteld server, ondersteund voor directe uitvoer naar het apparaat. Shaders zijn beschikbaar voor Vive en Panotools. Ondersteuning voor projectie lagen is aanwezig.

Onder de veranderingen in de nieuwe release:
- Uitgebreide interne programmeerinterfaces XRT (XRT Runtime), abstraherend van low-level hardware interactie functies. De methode xrt_instance_android en de header xrt/xrt_android.h met oproepen voor het Android-platform zijn toegevoegd. Functies voor schermverversingssnelheid zijn toegevoegd aan xrt_compositor. Ondersteuning voor de XR_FB_face_tracking2 extensie is toegevoegd, evenals de mogelijkheid om on-the-fly geavanceerde functies te activeren, zoals besturing via oogbeweging tracking.
- Functies voor het bepalen van de batterijstatus en het verkrijgen van eigenschappen van apparaten die met bewegingstracking zijn verbonden, zijn toegevoegd aan libmonado.
- In state trackers is de OpenXR-extensie XR_EXT_active_action_set_priority geĆÆmplementeerd, ondersteuning voor specificatie OpenXR 1.1.47 is geleverd en de mogelijkheid om geavanceerde functionaliteiten, zoals oogbeweging tracking, in en uit te schakelen is toegevoegd.
- De CPU-belasting is verlaagd in de drivers voor het Android-platform.
- In de driver die OpenHMD gebruikt, is ondersteuning toegevoegd voor de onofficiƫle Haptics API voor Oculus Rift CV1 apparaten.
- Ondersteuning voor zichtmaskers is toegevoegd aan de simulatie driver, om te beheren welke objecten zichtbaar zijn in elk oog.
- Ondersteuning voor 3D-headsets HP Reverb G2 Omnicept en Acer AH100 is toegevoegd.
- In de samenstelling de server Ondersteuning voor dynamische wijziging van de schermverversingssnelheid op het Android-platform is gerealiseerd. De omgevingsvariabele WAYLAND_CONNECTOR is toegevoegd voor het selecteren van het uitvoerapparaat in omgevingen die op Wayland zijn gebaseerd.
Bron: opennet.ru
