Projekti xrdesktop për përdorimin e GNOME dhe KDE në kufjet e realitetit virtual

Zhvilluesit nga Collabora prezantuar projekt xrdesktop, në të cilën, me mbështetjen e Valve, po zhvillohet një bibliotekë me elementë për ndërveprim me desktopët tradicionalë brenda mjediseve tredimensionale të krijuara duke përdorur syze 3D dhe helmeta të realitetit virtual. Kodi i bibliotekës është i shkruar në C dhe shperndare nga me licencë MIT. Asamble të gatshme përgatitur për Arch Linux и Ubuntu 19.04 / 18.04.

Aktualisht, Linux ka tashmë mjete për dalje direkte në kufjet e realitetit virtual (shtesat Vulkan VK_EXT_acquire_xlib_display për X11 dhe VK_EXT_acquire_wl_display për Wayland), por nuk ka mbështetje në nivelin e paraqitjes së saktë të dritareve në hapësirën 3D dhe sinkronizimit të shkallës së rifreskimit të ekranit. Qëllimi i projektit xrdesktop është të zhvillojë metoda që do të lejojnë përdorimin e ndërfaqeve klasike të fokusuara në ekranin e ekranit XNUMXD dhe kontrollin e tastierës dhe miut në mjedise virtuale.

Projekti xrdesktop për përdorimin e GNOME dhe KDE në kufjet e realitetit virtual

Komponentët e xrdesktop zgjerojnë menaxherët ekzistues të dritareve dhe kompoziteve për të përdorur sistemet e ekzekutimit të realitetit virtual për të dhënë dritare dhe desktop në mjedise virtuale 3D. xrdesktop promovon idenë e integrimit në mjediset ekzistuese të desktopit pa nevojën për të drejtuar një menaxher të veçantë të specializuar të përbërë dhe duke lejuar konfigurimet ekzistuese të personalizuara të përdorura me një monitor të rregullt që të përdoren me helmeta XNUMXD.

Arkitektura e projektit nënkupton aftësinë për t'u integruar me çdo desktop, por në fazën aktuale të zhvillimit, komponentët për të mbështetur kufjet e realitetit virtual zbatohen për KDE dhe GNOME. Për KDE, mbështetja për helmetat 3D zbatohet përmes një shtojce të ngjashme me Compiz, dhe për GNOME përmes një grupi arnimesh për GNOME Shell. Këta komponentë pasqyrojnë dritaret ekzistuese në mjedisin virtual të helmetave 3D në formën e një skene të veçantë ose në modalitetin e mbivendosjes, në të cilën dritaret e desktopit mund të mbivendosen në aplikacione të tjera të realitetit virtual që funksionojnë.

Përveç motorëve të renderimit, xrdesktop ofron komponentë për të ofruar navigim dhe hyrje duke përdorur kontrollues të specializuar hapësinorë si Valve Index dhe VIVE Wand. Xrdesktop përdor informacion nga kontrollorët VR për të gjeneruar ngjarje të rregullta hyrëse, duke simuluar përdorimin e një tastierë dhe mausi.

xrdesktop përfshin disa biblioteka që gjenerojnë tekstura dritare për kohën e ekzekutimit të VR duke përdorur OpenVR, si dhe një sistem të bazuar në API për paraqitjen e një desktopi të plotë në një mjedis 3D. Meqenëse xrdesktop nuk ofron menaxherin e vet të dritareve, kërkohet punë integruese me menaxherët ekzistues të dritareve (xrdesktop mund të bartet në çdo menaxher të dritareve X11 ose Wayland). Në anën e drejtuesit të grafikës, funksionimi kërkon një drejtues që mbështet Vulkan API dhe shtesën VK_KHR_external_memory.

Projekti xrdesktop për përdorimin e GNOME dhe KDE në kufjet e realitetit virtual

Përbërësit kryesorë të xrdesktop:

  • gulkan - Lidhja e glibit për Vulkan, duke ofruar klasa për pajisjet e përpunimit, shader dhe inicializimin e teksteve nga memoria ose buferët DMA;
  • gxr — API për abstraktimin e ndërfaqeve të programeve për zhvillimin e aplikacioneve të realitetit virtual. Aktualisht mbështetet vetëm OpenVR, por mbështetja për standardin OpenXR do të shtohet në të ardhmen e afërt;
  • libinputsynth — një bibliotekë për sintetizimin e ngjarjeve hyrëse, të tilla si lëvizja e mausit, klikimet dhe shtypjet e tasteve, të implementuara në formën e backend-eve për xdo, xi2 dhe Clutter;
  • xrdesktop — një bibliotekë për menaxhimin e dritareve në një mjedis 3D, një grup miniaplikacionesh shoqëruese dhe backend për paraqitjen e skenës;
  • kwin-efekt-xrdesktop и kdeplasma-applets-xrdesktop — një plugin për KWin për integrim me KDE dhe një aplikacion Plasma për kalimin e KWin në modalitetin e daljes në një helmetë 3D;
  • gnome-shell patchset и gnome-shell-extension-xrdesktop — një grup arnimesh për GNOME Shell për të integruar mbështetjen e xrdesktop dhe një shtesë për kalimin e daljes në një helmetë 3D në GNOME Shell.

Projekti mbështet disa metoda për organizimin e ndërveprimit me desktopin dhe dritaret në një mjedis virtual, të cilat mund të përdoren për kapjen e dritareve, shkallëzimin, lëvizjen, rrotullimin, mbivendosjen në një sferë, vendosjen dhe fshehjen e dritareve, përdorimin e menysë së kontrollit dhe kontrollin në të njëjtën kohë me dy duar duke përdorur kontrollues të shumtë.

Burimi: opennet.ru

Shto një koment