Esiteltiin wxrd, Wayland-pohjainen yhdistelmäpalvelin virtuaalitodellisuusjärjestelmille

Collabora-yritys esitteli Wayland-protokollalla toteutetun komposiittipalvelimen wxrd, joka on tarkoitettu xrdesktop-komponentteihin perustuvan työpöydän luomiseen kolmiulotteisissa virtuaalitodellisuusympäristöissä. Perustana on Sway-käyttäjäympäristön kehittäjien kehittämä wlroots-kirjasto ja virtuaalitodellisuusjärjestelmiin suunniteltu wxrc-komposiittipalvelin. Projektikoodi on kirjoitettu C-kielellä ja sitä jaetaan MIT-lisenssillä.

Toisin kuin alun perin xrdesktopissa ehdotettu ratkaisu, wxrd tarjoaa erikoistuneen komposiittipalvelimen virtuaalitodellisuusympäristöihin sen sijaan, että se mukauttaisi olemassa olevia ikkunoiden hallintaohjelmia ja työpöydän kuoria VR-järjestelmiin (xrdesktop-projekti tarjoaa erilliset korjaustiedostot kwinille ja GNOME Shellille, jotka vaativat mukautuksen jokaista uutta varten näiden komponenttien vapautuminen). wxrd:n avulla voit paitsi peilata olemassa olevan kaksiulotteisen työpöydän sisältöä, joka näkyy samaan aikaan tavallisella näytöllä, myös käsitellä erikseen kolmiulotteista työpöytää varten käynnistettyjä ikkunoita (eli ei tarjoa pääsyä VR-kypärä nykyisessä järjestelmätaulukossa käytetylle työpöydälle, mutta muodostaa erillisen ympäristön VR-kypärälle).

Toisin kuin vastaavat projektit Simula VR, Stardust, Motorcar ja Safespaces, wxrd-komposiittipalvelin luotiin mahdollisimman vähän riippuvuuksia ja alhaista resurssien kulutusta silmällä pitäen. Wxrd antaa sinun työskennellä paitsi Wayland-protokollaan perustuvien sovellusten kanssa ja mahdollistaa X11-sovellusten käynnistämisen xwayland DDX -palvelimen avulla.

Koska Wayland-protokollalaajennus virtuaalisille näppäimistöille on kehitteillä, syöttö wxrd:hen toteutetaan näppäimistön syöttöemulointijärjestelmän kautta, joka siirtää kaikki unicode-merkit, mukaan lukien emojit, xrdesktopin virtuaalisesta näppäimistöstä. Wxrd:n suorittamiseen tarvitset näytönohjaimen, joka tukee Vulkan-grafiikkasovellusliittymää ja VK_EXT_image_drm_format_modifier-laajennusta, jota Mesa tukee julkaisusta 21.1 lähtien (sisältyy Ubuntuun 21.04). Vulkan API:n käyttäminen hahmontamiseen vaatii VK_EXT_physical_device_drmm-laajennuksen, joka esiteltiin Mesa 21.2:ssa (Ubuntu 21.10).

Hyödyt erillisen yhdistelmäpalvelimen käyttämisestä virtuaalitodellisuusjärjestelmille sen sijaan, että integroitaisiin perinteisen työpöydän näyttämiseen käytettyjen XNUMXD-ikkunanhallintaohjelmien kanssa:

  • Kun wlroots-kirjasto suoritetaan Wayland- tai X11-pohjaisessa istunnossa, se avaa ikkunan, jossa voit helposti kaapata näppäimistön syötteitä ja hiiren tapahtumia ja ohjata syötteen tiettyyn ikkunaan virtuaalitodellisuusympäristössä. Jatkossa he aikovat käyttää tätä ominaisuutta järjestämään syötteitä paitsi VR-ohjaimen kautta myös tavallisen näppäimistön ja hiiren avulla.
  • Ikkunoita ei rajoita XNUMXD-työpöytäkehys, ja ne voivat olla mielivaltaisen kokoisia, ja niitä rajoittaa vain laitteiston tukema pintakuviokoko.
  • Ikkunoiden renderöinti wxrd:ssä suoritetaan alkuperäisellä 3D head-mounted display (HMD) -kuvan virkistystaajuudella, kun taas peilattaessa ikkunoita perinteisistä ikkunanhallintaohjelmista käytetään taajuutta, jota käytetään tietojen päivittämiseen kiinteässä näytössä.
  • Fontit voidaan renderöidä ottamalla huomioon 3D-kypärän pikselitiheys viittaamatta kiinteän näytön pikselitiheyteen.
  • On mahdollista käyttää wxrd:tä järjestelmissä, joissa on vain 3D-kuulokkeet ja joissa ei ole tavallista näyttöä.

Erillisen VR:n yhdistelmäpalvelimen haitat:

  • VR-ympäristössä näytetään vain erillistä komposiittipalvelinta varten käynnistetyt sovellukset ilman mahdollisuutta siirtää tai peilata perinteisellä työpöydällä jo avattuja ikkunoita VR-ympäristöön (eli jatkaaksesi työskentelyä tavallisella näytöllä avoinna olevien sovellusten kanssa on käynnistettävä uudelleen erillisessä ympäristössä 3D-kypärää varten).
  • Wayland-tuki voi olla rajoitettua Vulkan API -toteutuksissa. Esimerkiksi gbm- ja wlroots-tiedostoja ei voida käyttää omien NVIDIA-ajurien kanssa, koska VK_EXT_drm_format_modifier-laajennusta ei tueta.



Lähde: opennet.ru

Lisää kommentti