Memperkenalkan wxrd, pelayan komposit berasaskan Wayland untuk sistem realiti maya

Syarikat Collabora membentangkan pelayan komposit wxrd, dilaksanakan berdasarkan protokol Wayland dan bertujuan untuk mencipta desktop berdasarkan komponen xrdesktop dalam persekitaran realiti maya tiga dimensi. Asasnya ialah perpustakaan wlroots, yang dibangunkan oleh pembangun persekitaran pengguna Sway, dan pelayan komposit wxrc, yang direka untuk digunakan dalam sistem realiti maya. Kod projek ditulis dalam C dan diedarkan di bawah lesen MIT.

Tidak seperti penyelesaian yang asalnya dicadangkan dalam xrdesktop, wxrd menawarkan pelayan komposit khusus untuk persekitaran realiti maya, dan bukannya menyesuaikan pengurus tetingkap sedia ada dan cangkerang desktop untuk sistem VR (projek xrdesktop menyediakan tampung berasingan untuk kwin dan GNOME Shell, yang memerlukan penyesuaian untuk setiap yang baharu pelepasan komponen ini). Penggunaan wxrd membolehkan anda bukan sahaja untuk mencerminkan kandungan desktop dua dimensi sedia ada, pada masa yang sama ditunjukkan pada monitor biasa, tetapi untuk memproses secara berasingan tetingkap yang dilancarkan khusus untuk desktop tiga dimensi (iaitu, tidak menyediakan akses daripada topi keledar VR ke desktop yang digunakan pada jadual sistem semasa, tetapi untuk membentuk persekitaran yang berasingan untuk topi keledar VR).

Tidak seperti projek serupa Simula VR, Stardust, Motorcar dan Safespaces, pelayan komposit wxrd dicipta dengan tujuan untuk menggunakan bilangan kebergantungan minimum dan penggunaan sumber yang rendah. Wxrd juga membolehkan anda bekerja bukan sahaja dengan aplikasi berdasarkan protokol Wayland dan membolehkan anda melancarkan aplikasi X11 menggunakan pelayan DDX xwayland.

Memandangkan sambungan protokol Wayland untuk papan kekunci maya sedang dibangunkan, input kepada wxrd dilaksanakan melalui sistem emulasi input papan kekunci yang memindahkan semua aksara unikod, termasuk emoji, daripada papan kekunci maya yang disediakan dalam xrdesktop. Untuk menjalankan wxrd, anda memerlukan kad video yang menyokong API grafik Vulkan dan sambungan VK_EXT_image_drm_format_modifier, disokong dalam Mesa sejak keluaran 21.1 (termasuk dalam Ubuntu 21.04). Menggunakan API Vulkan untuk pemaparan memerlukan sambungan VK_EXT_physical_device_drmm, yang diperkenalkan dalam Mesa 21.2 (Ubuntu 21.10).

Kelebihan menggunakan pelayan komposit yang berasingan untuk sistem realiti maya dan bukannya menyepadukan dengan pengurus tetingkap XNUMXD yang digunakan untuk memaparkan desktop tradisional:

  • Apabila dijalankan dalam sesi berasaskan Wayland atau X11, pustaka wlroots membuka tetingkap di mana anda boleh menangkap input papan kekunci dan peristiwa tetikus dengan mudah dan mengalihkan input tersebut ke tetingkap tertentu dalam persekitaran realiti maya. Pada masa hadapan, mereka merancang untuk menggunakan ciri ini untuk mengatur input bukan sahaja melalui pengawal VR, tetapi juga menggunakan papan kekunci dan tetikus biasa.
  • Windows tidak dihadkan oleh bingkai desktop XNUMXD dan boleh bersaiz sewenang-wenangnya, terhad hanya oleh saiz tekstur maksimum yang disokong oleh perkakasan.
  • Paparan tetingkap dalam wxrd dilakukan pada kadar segar semula imej paparan dipasang kepala 3D (HMD), manakala apabila mencerminkan tetingkap daripada pengurus tetingkap konvensional, kekerapan yang digunakan untuk mengemas kini maklumat pada monitor pegun digunakan.
  • Fon boleh diberikan dengan mengambil kira ketumpatan piksel topi keledar 3D, tanpa merujuk kepada ketumpatan piksel monitor pegun.
  • Anda boleh menggunakan wxrd pada sistem yang hanya mempunyai set kepala 3D dan tidak mempunyai monitor biasa.

Kelemahan pelayan komposit berasingan untuk VR:

  • Dalam persekitaran VR, hanya aplikasi yang dilancarkan khusus untuk pelayan komposit yang berasingan ditunjukkan, tanpa keupayaan untuk memindahkan atau mencerminkan tetingkap yang telah dibuka pada desktop tradisional ke persekitaran VR (iaitu, untuk terus bekerja dengan aplikasi yang dibuka pada skrin biasa, anda perlu dimulakan semula dalam persekitaran yang berasingan untuk topi keledar 3D).
  • Sokongan Wayland mungkin terhad dalam pelaksanaan API Vulkan. Sebagai contoh, gbm dan wlroots tidak boleh digunakan dengan pemacu NVIDIA proprietari kerana kekurangan sokongan untuk sambungan VK_EXT_drm_format_modifier.



Sumber: opennet.ru

Tambah komen