È stata pubblicata la versione 25.0.0 del progetto Monado, che sviluppa un'implementazione aperta dello standard OpenXR. Lo standard OpenXR è stato preparato dal consorzio Khronos e definisce un'API universale per la creazione di applicazioni di realtà virtuale e aumentata, oltre a un insieme di strati per l'interazione con l'hardware. Monado fornisce un runtime che soddisfa completamente i requisiti di OpenXR, utilizzabile per organizzare il lavoro con la realtà virtuale e aumentata su smartphone, tablet, PC e altri dispositivi. Il codice del progetto è scritto in linguaggio C e distribuito con la licenza open-source Boost Software License 1.0, compatibile con GPL.
Componenti della piattaforma:
- Un motore di visione spaziale che esegue compiti come il tracciamento degli oggetti, la determinazione delle superfici, la ricostruzione delle mesh, il riconoscimento dei gesti e il tracciamento del movimento oculare.
- Un motore di tracciamento del personaggio che offre componenti per la previsione dei movimenti, il tracciamento ottico dei movimenti tramite telecamera, il tracciamento della posizione basato su dati provenienti da un visore VR, da un giroscopio e dai controller.
- Composito server, supportando il compositing, la modalità di output diretto, il passaggio video, la correzione delle lenti e la formazione di uno spazio di lavoro per lavorare simultaneamente con più applicazioni.
- Un motore di interazione che fornisce un insieme di widget e un toolkit per applicazioni di realtà virtuale, includendo anche strumenti per la simulazione di processi fisici.
- Uno strumento per la calibrazione dell'hardware e la definizione dei confini di movimento.
Caratteristiche principali:
- Driver per visori di realtà virtuale HDK (OSVR Hacker Developer Kit), PlayStation VR HMD, SteamVR, Panotools (PSVR), vari modelli Vive e dispositivi per cui sono disponibili driver OpenHMD.
- Driver per occhiali di realtà aumentata North Star.
- Driver per sistemi di tracciamento della posizione, come Intel RealSense T265.
- Insieme di regole udev per configurare l'accesso ai dispositivi di realtà virtuale senza ottenere privilegi di root.
- Componenti per il tracciamento del movimento con un framework per il filtraggio e lo streaming video.
- Sistema di tracciamento dei personaggi con sei gradi di libertà (6DoF, avanti/indietro, su/giù, sinistra/destra, imbardata, beccheggio, rollio) per controller PSVR e PS Move.
- Moduli per integrazione con API grafiche Vulkan e OpenGL.
- Modalità senza schermo (Headless).
- Gestione delle interazioni spaziali e del punto di vista.
- Supporto di base per la sincronizzazione dei fotogrammi e per l'input delle informazioni (azioni).
- Server composito pronto, che supporta l'output diretto su dispositivo. Sono forniti shader per Vive e Panotools. È disponibile il supporto per strati di proiezione.

Tra le novità del nuovo rilascio:
- Espansi le interfacce di programmazione interne XRT (XRT Runtime), che astrae le caratteristiche di basso livello dell'interazione con l'hardware. Aggiunto il metodo xrt_instance_android e il file di intestazione xrt/xrt_android.h con chiamate per la piattaforma Android. Sono state aggiunte funzioni in xrt_compositor per gestire la frequenza di aggiornamento dello schermo. È stato aggiunto il supporto per l'estensione XR_FB_face_tracking2 e la possibilità di attivare on-the-fly funzionalità avanzate, come il controllo tramite il tracciamento degli occhi.
- In libmonado sono state aggiunte funzioni per determinare lo stato di carica della batteria e ottenere le proprietà dei dispositivi associati al tracciamento dei movimenti.
- Negli State Trackers è stata implementata l'estensione OpenXR XR_EXT_active_action_set_priority, garantito il supporto per la specifica OpenXR 1.1.47 e aggiunta la possibilità di attivare e disattivare funzionalità avanzate, come il tracciamento del movimento degli occhi.
- Nei driver per la piattaforma Android è stata ridotta l'uso della CPU.
- Nel driver che utilizza OpenHMD è stato aggiunto il supporto per l'API non ufficiale Haptics per i dispositivi Oculus Rift CV1.
- Nel driver di simulazione è stato aggiunto il supporto per le maschere di visibilità per gestire quali oggetti saranno visibili in ciascun occhio.
- Aggiunto il supporto per i visori 3D HP Reverb G2 Omnicept e Acer AH100.
- Nel composito server È stata implementata la supporto per la modifica dinamica della frequenza di aggiornamento dello schermo sulla piattaforma Android. È stata aggiunta la variabile d'ambiente WAYLAND_CONNECTOR per selezionare il dispositivo di output in ambienti basati su Wayland.
Fonte: opennet.ru
