Programeri kompanije Collabora predstavili su xrdesktop projekat, u kojem, uz podršku ventila, razvija se biblioteka s elementima za interakciju s tradicionalnim radnim površinama u trodimenzionalnim okruženjima trenirao sa 3D naočalama i kacigama za virtualnu stvarnost. Kôd biblioteke napisan je na C jeziku i distribuiran pod MIT licencom. Gotove verzije su spremne za Arch Linux i Ubuntu 19.04 i 18.04.
Trenutno Linux već ima sredstva za direktno generiranje slušalica virtualne stvarnosti (Vulkan ekstenzije VK_EXT_acquire_xlib_display za X11 i VK_EXT_acquire_wl_display za Wayland), ali ne postoji podrška za ispravan nivo crtanja prozora u 3D prostoru i sinhronizaciji brzine osvježavanja ekrana.
O Xrdesktopu
Cilj projekta xrdesktop je razviti metode koje omogućavaju upotrebu klasičnih sučelja u virtualnim okruženjima, fokusiran na izlaz na dvodimenzionalnom ekranu i kontrolu pomoću tastature i miša.
Komponente xrdesktop proširuju dostupne prozorske i kompozitne upravitelje s mogućnostima korištenja vremena izvođenja sistema virtualne stvarnosti za prikazivanje prozora i radne površine u trodimenzionalnim virtualnim okruženjima.
U xrdesktop, promovira se ideja o integraciji u postojeća radna okruženja bez potrebe za pokretanjem specijaliziranog kompozitnog administratora odvojite i omogućite da se postojeće korisničke postavke koje se koriste sa običnim monitorom koriste sa 3D kacigama.
Arhitektura projekta podrazumijeva mogućnost integracije sa bilo kojom radnom površinom, ali u trenutnoj fazi razvoja implementirane su komponente za podršku slušalicama virtualne stvarnosti za KDE i Gnome.
Za KDE, podrška za 3D kacigu implementirana je kroz dodatak sličan Compiz-u, a za GNOME kroz set paketa za GNOME Shell.
Ove komponente preslikavaju postojeće prozore u virtualno okruženje 3D kaciga u obliku zasebne scene ili u načinu prekrivanja, u kojem se prozori radne površine mogu preklopiti na druge pokrenute aplikacije virtualne stvarnosti.
Pored mehanizama zastupanja, xrdesktop pruža komponente za navigaciju i podršku za unos koristeći specijalizovane prostorne kontrolere.
xrdesktop, na osnovu informacija iz VR kontrolera generira ulazne događaje običan, koji simulira upotrebu tastature i miša.
Xrdesktop uključuje nekoliko biblioteka koji kreiraju teksture prozora za VR izvršavanje pomoću OpenVR-a, kao i sistem zasnovan na API-ju za prikazivanje cijele radne površine u 3D okruženju.
Budući da xrdesktop ne nudi vlastiti upravitelj prozora, potreban je rad na integraciji s postojećim upraviteljima prozora (xrdesktop se može prenijeti na bilo koji X11 ili Wayland upravitelj prozora).
Glavne komponente xrdesktop-a:
gulkan: glib vezivanje za Vulkan, koje pruža klase za obradu uređaja, sjenčanja i inicijalizaciju tekstura iz memorije ili DMA međuspremnika.
gxr: je API za apstrahiranje softverskih sučelja za razvoj aplikacija virtualne stvarnosti. Trenutno je podržan samo OpenVR, ali podrška za OpenXR standard će biti dodana uskoro.
libinputsynth: je biblioteka za sintezu ulaznih događaja kao što su pomicanje miša, klikovi i pritisci tipki, implementirana u obliku pozadinskih datoteka za xdo, xi2 i Clutter.
xrdesktop: biblioteka za upravljanje prozorima u 3D okruženju, skup srodnih dodataka i pozadinskih datoteka za prikazivanje scene.
kwin-effect-xrdesktop i kdeplasma-applets-xrdesktop: dodatak KWin za integraciju KDE-a i plazma aplet za stavljanje KWin-a u izlazni način rada na 3D kacigi.
gnome-shell patchset i gnome-shell-extension-xrdesktop: je skup zakrpa za Gnome za integriranje podrške za xrdesktop i dodatak za promjenu izlaza u 3D kacigu u Gnome Shell.
Projekt podržava različite metode organiziranja interakcije radne površine i prozora u virtualnom okruženju, koje se mogu koristiti za hvatanje prozora, skaliranje, pomicanje, rotiranje, prekrivanje kugle, uređivanje i skrivanje prozora, korištenje kontrolnog izbornika i istovremeno upravljanje dvjema rukama koristeći više kontrolera.
Budite prvi koji komentarišete