È stato rilasciato il progetto Monado 25.1.0, 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 livelli per l'interazione con l'hardware. Monado offre un runtime che soddisfa pienamente i requisiti di OpenXR, utilizzabile per gestire la realtà virtuale e aumentata su smartphone, tablet, PC e qualsiasi altro dispositivo. Il codice del progetto è scritto in linguaggio C e distribuito sotto la licenza libera Boost Software License 1.0, compatibile con GPL.
Principali funzionalità 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.
- Server composito che supporta il compositing, la modalità di output diretto, il passaggio video, la correzione delle lenti e la creazione di spazi di lavoro per l'uso simultaneo di 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.
- Server composito che supporta l'output diretto su dispositivo. Vengono forniti shader per Vive e Panotools. È supportata la stratificazione proiettiva.
- Uno strumento per la calibrazione dell'hardware e la definizione dei confini di movimento.
- 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).
Tra le novità del nuovo rilascio:
- Migliorato il tracciamento del movimento delle mani. Aggiunto supporto per l'estensione OpenXR XR_EXT_hand_tracking_data_source, che consente di gestire separatamente le modalità di tracciamento delle mani «unobstructed» (mano libera) e «conforming» (un oggetto, come un controller, si trova nella mano). Migliorata la qualità del controllo attraverso i controller e nell'uso simultaneo di controller e tracciamento delle mani. Nei driver è stato implementato il supporto per nuovi ruoli e risolti problemi di orientamento e riconoscimento della posizione delle mani.
- Introdotta la sistema xrt_future e implementato il supporto per l'estensione OpenXR XR_EXT_future, che fornisce funzionalità per eseguire operazioni in modo asincrono (nelle future versioni dello standard OpenXR sarà disponibile il supporto per operazioni che possono essere avviate senza aspettare il completamento delle precedenti).
- Aggiunti driver per visori 3D Subur S1 e Rift DK2. Migliorato il supporto per i visori 3D Razer Hydra, Vive Pro 2, Xreal Air 2 Ultra e Fujitsu.
- Aggiunto il driver SolarXR IPC per estrarre i dati di tracciamento da server SlimeVR.
- Nel composito server implementata la compensazione del ritardo tra il tracciamento del movimento della testa e l'effettivo output del frame su schermi con scansione lineare (rolling-scanout). Aumentata l'affidabilità della configurazione di framebuffer virtuali sovrapposti (swapchain), utilizzati per garantire un'uscita fluida.
- Nell'interfaccia principale per la piattaforma Android implementato il supporto per la scansione e il salvataggio di codici QR per la calibrazione dei dispositivi Cardboard.
Fonte: opennet.ru
