Xrdesktop un progetto di cuffie per realtà virtuale per utilizzare Gnome e KDE

xrdesktop

Gli sviluppatori dell'azienda Collabora hanno presentato il progetto xrdesktop, in cui, con il supporto di Valve, è in fase di sviluppo una libreria con elementi per interagire con i desktop tradizionali all'interno di ambienti tridimensionali addestrato con occhiali 3D e caschi di realtà virtuale. Il codice della libreria è scritto in C e distribuito sotto licenza MIT. Le build finite sono pronte per Arch Linux e Ubuntu 19.04 e 18.04.

Attualmente, Linux ha già i mezzi per generare direttamente cuffie per realtà virtuale (estensioni Vulkan VK_EXT_acquisire_xlib_display per X11 e VK_EXT_acquire_wl_display per Wayland), ma non c'è supporto per il corretto livello di disegno della finestra nello spazio 3D e per la sincronizzazione della frequenza di aggiornamento dello schermo.

Informazioni su Xrdesktop

L'obiettivo del progetto xrdesktop è sviluppare metodi che consentano l'utilizzo di interfacce classiche in ambienti virtuali, incentrato sull'output su uno schermo bidimensionale e sul controllo tramite tastiera e mouse.

I componenti xrdesktop estendono i gestori di finestre e compositi disponibili con capacità di utilizzare il runtime dei sistemi di realtà virtuale per eseguire il rendering di finestre e desktop in ambienti virtuali tridimensionali.

In xrdesktop, viene promossa l'idea di integrarsi negli ambienti desktop esistenti senza la necessità di avviare un amministratore composito specializzato separare e consentire l'utilizzo delle impostazioni utente esistenti utilizzate con un normale monitor con i caschi 3D.

L'architettura del progetto implica la capacità di integrarsi con qualsiasi desktop, ma nell'attuale fase di sviluppo, i componenti sono implementati per supportare i visori per la realtà virtuale per KDE e Gnome.

Per KDE, il supporto per i caschi 3D è implementato tramite il plug-in simile a Compiz e per GNOME tramite un set di pacchetti per GNOME Shell.

Questi componenti rispecchiano le finestre esistenti nell'ambiente virtuale dei caschi 3D sotto forma di una scena separata o in modalità di sovrapposizione, in cui le finestre del desktop possono essere sovrapposte ad altre applicazioni di realtà virtuale in esecuzione.

Oltre ai meccanismi di rappresentazione, xrdesktop fornisce componenti per la navigazione e il supporto dell'input utilizzando controller spaziali specializzati.

xrdesktop, in base alle informazioni dai controller VR genera eventi di input ordinario, simulando l'uso della tastiera e del mouse.

Xrdesktop include diverse librerie che creano trame di finestre per il runtime VR utilizzando OpenVR, nonché un sistema basato su API per il rendering di un intero desktop in un ambiente 3D.

Poiché xrdesktop non fornisce un proprio gestore di finestre, è necessario del lavoro per l'integrazione con i gestori di finestre esistenti (xrdesktop può essere portato su qualsiasi gestore di finestre X11 o Wayland).

I componenti principali di xrdesktop:

Gulkan: un'associazione glib per Vulkan, che fornisce classi per l'elaborazione di dispositivi, shader e inizializzazione di trame dalla memoria o dai buffer DMA.

gxr: è un'API per astrarre interfacce software per sviluppare applicazioni di realtà virtuale. Attualmente è supportato solo OpenVR, ma presto verrà aggiunto il supporto per lo standard OpenXR.

synth libin: è una libreria per la sintesi di eventi di input come il movimento del mouse, i clic e le sequenze di tasti, implementata sotto forma di backend per xdo, xi2 e Clutter.

xrdesktop: una libreria per la gestione delle finestre in un ambiente 3D, un set di widget e backend correlati per il rendering della scena.

kwin-effect-xrdesktop e kdeplasma-applets-xrdesktop: un plugin KWin per l'integrazione con KDE e un'applet plasma per mettere KWin in modalità di output su un casco 3D.

gnome-shell patchset e gnome-shell-extension-xrdesktop: è un set di patch per Gnome per integrare il supporto xrdesktop e un plugin per modificare l'output in un casco 3D in Gnome Shell.

Il progetto supporta vari metodi di organizzazione dell'interazione tra desktop e finestre in un ambiente virtuale, che può essere utilizzato per acquisire finestre, ridimensionare, spostare, ruotare, sovrapporre su una sfera, disporre e nascondere le finestre, utilizzare il menu di controllo e controllare contemporaneamente due mani utilizzando più controller.


Il contenuto dell'articolo aderisce ai nostri principi di etica editoriale. Per segnalare un errore fare clic su qui.

Puoi essere il primo a lasciare un commento

Lascia un tuo commento

L'indirizzo email non verrà pubblicato.

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.