Virtual reallıq qulaqlıqlarında GNOME və KDE-dən istifadə üçün xrdesktop layihəsi

Collabora-dan tərtibatçılar təqdim etdi layihə xrdesktop, burada Valve-in dəstəyi ilə 3D eynəklər və virtual reallıq dəbilqələrindən istifadə etməklə yaradılan üçölçülü mühitlərdə ənənəvi iş masaları ilə qarşılıqlı əlaqə elementləri ilə kitabxana hazırlanır. Kitabxana kodu C və dilində yazılmışdır yayılır MIT lisenziyası altında. Hazır məclislər hazırladılar uğrunda Arch Linux и Ubuntu 19.04 / 18.04.

Hazırda Linux-da virtual reallıq qulaqlıqlarına birbaşa çıxış üçün alətlər var (Vulkan genişləndirmələri X11 üçün VK_EXT_acquire_xlib_display və Wayland üçün VK_EXT_acquire_wl_display), lakin 3D məkanında pəncərələrin düzgün göstərilməsi və ekran yeniləmə sürətinin sinxronizasiyası səviyyəsində dəstək yoxdur. Xrdesktop layihəsinin məqsədi virtual mühitlərdə XNUMXD ekran displeyinə və klaviatura və siçan idarəsinə yönəlmiş klassik interfeyslərdən istifadə etməyə imkan verəcək metodların işlənib hazırlanmasıdır.

Virtual reallıq qulaqlıqlarında GNOME və KDE-dən istifadə üçün xrdesktop layihəsi

xrdesktop komponentləri 3D virtual mühitlərdə pəncərələri və masaüstlərini göstərmək üçün virtual reallıq iş vaxtı sistemlərindən istifadə etmək üçün mövcud pəncərə və kompozit menecerləri genişləndirir. xrdesktop ayrıca ixtisaslaşdırılmış kompozit menecer işə salmadan və adi monitorla istifadə edilən mövcud fərdi konfiqurasiyaların XNUMXD dəbilqələrlə istifadəsinə icazə vermədən mövcud iş masası mühitlərinə inteqrasiya ideyasını təbliğ edir.

Layihənin arxitekturası istənilən iş masası ilə inteqrasiya imkanını nəzərdə tutur, lakin hazırkı inkişaf mərhələsində virtual reallıq qulaqlıqlarını dəstəkləyən komponentlər KDE və GNOME üçün həyata keçirilir. KDE üçün 3D dəbilqələrə dəstək Compiz kimi plagin vasitəsilə, GNOME üçün isə GNOME Shell üçün yamaqlar dəsti vasitəsilə həyata keçirilir. Bu komponentlər mövcud pəncərələri 3D dəbilqələrin virtual mühitinə ayrıca səhnə şəklində və ya üst-üstə düşmə rejimində əks etdirir, bu rejimdə iş masası pəncərələri digər işləyən virtual reallıq proqramlarının üzərinə qoyula bilər.

Mühərriklərin göstərilməsi ilə yanaşı, xrdesktop, Valve Index və VIVE Wand kimi ixtisaslaşdırılmış məkan nəzarətçilərindən istifadə edərək naviqasiya və daxiletmə təmin etmək üçün komponentlər təqdim edir. Xrdesktop klaviatura və siçan istifadəsini simulyasiya edərək müntəzəm daxiletmə hadisələri yaratmaq üçün VR nəzarətçilərindən alınan məlumatlardan istifadə edir.

xrdesktop-a OpenVR-dən istifadə edərək VR işləmə vaxtı üçün pəncərə teksturaları yaradan bir neçə kitabxana, həmçinin 3D mühitində tam iş masası göstərmək üçün API əsaslı sistem daxildir. xrdesktop öz pəncərə menecerini təmin etmədiyindən, mövcud pəncərə menecerləri ilə inteqrasiya işi tələb olunur (xrdesktop istənilən X11 və ya Wayland pəncərə menecerinə köçürülə bilər). Qrafik sürücü tərəfində əməliyyat Vulkan API və VK_KHR_external_memory genişləndirilməsini dəstəkləyən sürücü tələb edir.

Virtual reallıq qulaqlıqlarında GNOME və KDE-dən istifadə üçün xrdesktop layihəsi

xrdesktop-un əsas komponentləri:

  • gülkan - Vulkan üçün glib bağlaması, emal cihazları, şeyderlər və yaddaşdan və ya DMA buferlərindən fakturaların işə salınması üçün siniflər təqdim edir;
  • gxr — Virtual reallıq proqramlarını inkişaf etdirmək üçün proqram interfeyslərini abstraktlaşdırmaq üçün API. Hazırda yalnız OpenVR dəstəklənir, lakin yaxın gələcəkdə OpenXR standartı üçün dəstək əlavə olunacaq;
  • libinputsinti — xdo, xi2 və Clutter üçün arxa uçlar şəklində həyata keçirilən siçan hərəkəti, kliklər və düymələrin vuruşları kimi daxiletmə hadisələrinin sintezi üçün kitabxana;
  • xrdesktop — 3D mühitində pəncərələri idarə etmək üçün kitabxana, səhnəni göstərmək üçün müşayiət olunan vidjetlər və arxa planlar dəsti;
  • kwin-effect-xrdesktop и kdeplazma-applets-xrdesktop — KDE ilə inteqrasiya üçün KWin üçün plagin və 3D dəbilqədə KWin-i çıxış rejiminə keçirmək üçün Plazma applet;
  • gnome shell patchset и gnome-shell-extension-xrdesktop — xrdesktop dəstəyini və çıxışı GNOME Shell-də 3D dəbilqəyə dəyişmək üçün əlavəni birləşdirmək üçün GNOME Shell üçün yamaqlar dəsti.

Layihə virtual mühitdə iş masası və pəncərələrlə qarşılıqlı əlaqənin təşkili üçün bir neçə metodu dəstəkləyir, bunlardan pəncərələri çəkmək, miqyaslaşdırmaq, köçürmək, fırlatmaq, sferada ört-basdır etmək, pəncərələri yerləşdirmək və gizlətmək, idarəetmə menyusundan istifadə etmək və eyni zamanda idarə etmək üçün istifadə edilə bilər. çox nəzarətçilərdən istifadə edərək iki əl.

Mənbə: opennet.ru

Добавить комментарий