Виртуал бодит байдлын чихэвч дээр GNOME болон KDE ашиглахад зориулсан xrdesktop төсөл

Collabora-ийн хөгжүүлэгчид танилцуулсан ноорог xrdesktop, үүнд Valve-ийн дэмжлэгтэйгээр 3D нүдний шил, виртуал бодит байдлын дуулга ашиглан бүтээсэн гурван хэмжээст орчинд уламжлалт ширээний компьютеруудтай харилцах элементүүдтэй номын санг боловсруулж байна. Номын сангийн код нь C болон бичигдсэн тараасан MIT лицензийн дагуу. Бэлэн угсралт бэлтгэсэн нь Arch Linux и Ubuntu 19.04 / 18.04.

Одоогийн байдлаар Линукс нь виртуал бодит байдлын чихэвч рүү шууд гаргах хэрэгслүүдтэй (Vulkan өргөтгөл нь X11-д зориулсан VK_EXT_acquire_xlib_display, Wayland-д зориулсан VK_EXT_acquire_wl_display) боловч 3D орон зайд цонхыг зөв дүрслэх, дэлгэцийн давтамжийг синхрончлох түвшинд дэмжлэг байхгүй байна. Xrdesktop төслийн зорилго нь виртуал орчинд XNUMXD дэлгэцийн дэлгэц, гар, хулганы удирдлагад чиглэсэн сонгодог интерфэйсийг ашиглах боломжийг олгох аргуудыг боловсруулах явдал юм.

Виртуал бодит байдлын чихэвч дээр GNOME болон KDE ашиглахад зориулсан xrdesktop төсөл

xrdesktop бүрэлдэхүүн хэсгүүд нь одоо байгаа цонх болон нийлмэл менежерүүдийг өргөтгөж, 3D виртуал орчинд цонх, ширээний компьютерийг дүрслэхийн тулд виртуал бодит байдлын ажиллах цагийн системийг ашигладаг. xrdesktop нь тусдаа тусгай нийлмэл менежер ажиллуулах шаардлагагүйгээр одоо байгаа ширээний орчинд нэгтгэх санааг сурталчилж, ердийн монитортой ашиглаж байгаа одоо байгаа тохиргоог XNUMXD дуулгатай ашиглах боломжийг олгодог.

Төслийн архитектур нь ямар ч ширээний компьютертэй нэгтгэх чадварыг илэрхийлдэг боловч хөгжлийн өнөөгийн шатанд виртуал бодит байдлын чихэвчийг дэмжих бүрэлдэхүүн хэсгүүдийг KDE болон GNOME-д зориулж хэрэгжүүлж байна. KDE-ийн хувьд 3D дуулганы дэмжлэгийг Compiz-тэй төстэй залгаасуудаар, харин GNOME-д GNOME Shell-ийн багц нөхөөсүүдээр дамжуулан хэрэгжүүлдэг. Эдгээр бүрэлдэхүүн хэсгүүд нь одоо байгаа цонхнуудыг 3D дуулганы виртуал орчинд тус тусад нь дүрслэх эсвэл давхарлах горимд тусгадаг бөгөөд энэ нь ширээний цонхыг бусад ажиллаж байгаа виртуал бодит хэрэглүүрүүд дээр суулгаж болно.

Xrdesktop нь дүрслэх хөдөлгүүрүүдээс гадна Valve Index, VIVE Wand зэрэг орон зайн тусгай хянагчуудыг ашиглан навигаци, оролтыг хангах бүрэлдэхүүн хэсгүүдээр хангадаг. Xrdesktop нь гар, хулганын хэрэглээг дуурайлган тогтмол оролтын үйл явдлуудыг үүсгэхийн тулд VR контроллеруудын мэдээллийг ашигладаг.

xrdesktop нь OpenVR ашиглан VR ажиллах хугацаандаа цонхны бүтэц үүсгэдэг хэд хэдэн номын сангууд, мөн 3D орчинд бүрэн ширээний компьютерт зориулсан API-д суурилсан дүрслэх системийг агуулдаг. Xrdesktop нь өөрийн гэсэн цонхны менежерээр хангадаггүй тул одоо байгаа цонхны менежерүүдтэй нэгтгэх шаардлагатай (xrdesktop-ийг дурын X11 эсвэл Wayland цонхны менежерт шилжүүлж болно). График драйверын тал дээр ажиллахад Vulkan API болон VK_KHR_external_memory өргөтгөлтэй драйвер шаардлагатай.

Виртуал бодит байдлын чихэвч дээр GNOME болон KDE ашиглахад зориулсан xrdesktop төсөл

xrdesktop-ийн үндсэн бүрэлдэхүүн хэсгүүд:

  • гулкан - Vulkan-д зориулсан glib binding, санах ой эсвэл DMA буферээс боловсруулалт хийх төхөөрөмж, шэйдер, текстийг эхлүүлэх ангиуд;
  • gxr — Виртуал бодит байдлын програмуудыг хөгжүүлэх програмын интерфейсийг хийсвэрлэх API. Одоогоор зөвхөн OpenVR дэмжигдэж байгаа боловч ойрын ирээдүйд OpenXR стандартын дэмжлэг нэмэгдэх болно;
  • libinputsynth - xdo, xi2 болон Clutter-ийн арын хэсэг хэлбэрээр хэрэгжсэн хулганы хөдөлгөөн, товшилт, товчлуурын цохилт зэрэг оролтын үйл явдлыг нэгтгэх номын сан;
  • xrdesktop - 3D орчинд цонхыг удирдах номын сан, дүр зургийг үзүүлэхэд зориулсан дагалдах хэрэгсэл, арын хэсгүүдийн багц;
  • kwin-effect-xrdesktop и kdeplasma-applets-xrdesktop — KDE-тэй нэгтгэх KWin-д зориулсан залгаас ба 3D дуулга дээрх KWin-ийг гаралтын горимд шилжүүлэхэд зориулсан Plasma апплет;
  • gnome бүрхүүлийн нөхөөс и gnome-shell-extension-xrdesktop — xrdesktop-ийн дэмжлэгийг нэгтгэх GNOME Shell-д зориулсан засварууд болон гаралтыг GNOME Shell-ийн 3D дуулга руу шилжүүлэх нэмэлт хэрэгсэл.

Төсөл нь виртуал орчинд ширээний компьютер болон цонхтой харилцах ажлыг зохион байгуулах хэд хэдэн аргыг дэмждэг бөгөөд эдгээр нь цонхыг авах, масштаблах, зөөх, эргүүлэх, бөмбөрцөг дээр давхарлах, цонхыг байрлуулах, нуух, хяналтын цэсийг ашиглах, нэгэн зэрэг удирдах боломжтой. олон хянагч ашиглан хоёр гар.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх