Bakwazile ukusebenzisa iLinux ku-emulator ye-RISC-V kuVRChat

Ezinsukwini ezimbalwa ezedlule imiphumela yesilingo ikhishwe inhlangano ngokususelwa ekwethulweni kwe- I-Linux kernel ngaphakathi kwesikhala esibonakalayo se-3D yomdlalo wabadlali abaningi online.

Lokhu kuhlolwa Kwenziwe kuVRChat evumela ukulayishwa kwamamodeli we-3D ngezithunzi zawo. Ukuqalisa lo mbono okhulelwe, kwenziwa i-emulator esuselwa ekwakhiweni kwe-RISC-V okwenziwa ohlangothini lwe-GPU ngendlela ye-pixel shader.

Mayelana nephrojekthi

I-emulator isuselwa ekusebenzeni ngolimi lwe-C, ogama lakhe, nalo, lisebenzise ukuthuthuka kwe-riscv-rust emulator encane, nayo ethuthukiswa ngolimi lweRust. Ikhodi ye-C elungiselelwe ihunyushelwa kusixhumi se-pixel ngolimi lwe-HLSL, efanelekile ukulayishwa ku-VRChat.

I-emulator inikeza ukusekelwa okugcwele kwemiyalo esethwe rv32imasu, iyunithi yokulawula inkumbulo ye-SV32 kanye nesethi encane yemingcele (UART kanye nesibali sikhathi). Amandla enziwe ngomumo anele ukulayisha i-Linux kernel 5.13.5 nemvelo eyisisekelo yomugqa womyalo weBusyBox, ongasebenzisana ngayo ngqo nezwe elibonakalayo leVRChat.

Cishe ngoMashi 2021, nginqume ukubhala i-emulator ekwazi ukusebenzisa i-Linux kernel ephelele kuVRChat. Ngenxa yemikhawulo yemvelo yaleyo platform, ithuluzi elikhethiwe bekufanele libe shader. Futhi ngemuva kwezinyanga ezimbalwa zomsebenzi sengiyaziqhenya ngokwethula i-RISC-V CPU / SoC emulator yomhlaba (engiyaziyo) ku-HLSL pixel shader, ekwazi ukugijimela ku-250 kHz (ku-2080 Ti) futhi i-boot Linux 5.13.5 ngokuxhaswa kwe-MMU.

I-emulator yenziwa nge-shader ngendlela yokuthungwa kwayo okunamandla (i-Unity Custom Render Texture), ingezwe yimibhalo ye-Udon enikezwe iVRChat, esetshenziselwa ukulawula i-emulator ngesikhathi sokusebenza.

Okuqukethwe kwenkumbulo okuyisisekelo kanye nesimo seprosesa sohlelo lokulingisa kugcinwa njengokuthungwa ngosayizi wamaphikseli angama-2048 × 2048, ngaleyo ndlela kusebenze iprosesa elingisiwe ku-250 kHz. Ngaphandle kweLinux, iMicropython nayo ingaqhutshwa ku-emulator.

Ukuqalisa iLinux bengicabanga ukuthi sizodinga okungenani ama-32 MiB enkumbulo eyinhloko (RAM), kepha ake siphephe futhi senze ama-64 - umehluko wokusebenza ngeke ube mkhulu futhi kufanele kube neVRAM eyanele.

Ekuqaleni, ukukhathazeka kokusebenza okuyinhloko kwakuyijubane lewashi. Lokho wukuthi, mingaki imijikelezo ye-CPU engenziwa ngohlaka olulodwa.

Ukuhlela ukugcinwa kwedatha ukuphikelela ngokusekelwa kokufunda nokubhala, kusetshenziswa iqhinga elihlobene nokusebenzisa into yeKhamera exhunywe endaweni engunxande kukhiqizwe yi-shader futhi kuqondiswe ukukhishwa kokuhumusha okuhunyushiwe kokufaka kwe-shader. Ngakho-ke, Noma iyiphi i-pixel ebhalwe ngesikhathi sokusebenza kwe-pixel shader ingafundwa ngokucubungula ifreyimu elandelayo.

Lapho kusetshenziswa ama-pixel shader, isibonelo esehlukile se-shader sikhishwa ngokufana ngephikseli ngayinye ekubunjweni.

Lesi sici sikukhathaza kakhulu ukuqaliswa futhi sidinga ukuhlanganiswa okuhlukile kwesimo sohlelo lonke olulingisiwe nokuqhathanisa ukuma kwephikseli elicutshungulwayo nesimo se-CPU noma okuqukethwe kwe-RAM kohlelo lokulingisa olufakwe kuyo (i-pixel ngayinye ingafaka izingcezu eziyi-128 imininingwane).

Kulokhu, ikhodi ye-shader idinga ukufakwa kwenani elikhulu lamasheke, ukwenza lula ukuqaliswa kwe-perl preprocessor perlpp.

Okwalabo nginentshisekelo kuma-specs kushiwo ukuthi:

  • ikhodi ikuGitHub
  • I-64 MiB ye-RAM ekhipha isimo se-CPU igcinwa nge-2048 × 2048 pixel (128 bpp) ukuthungwa kwefomethi ephelele
  • Isiko lobumbano linikeza ukuthungwa ngokushintshwa kwebhafa kuvumela isimo sokufaka ikhodi / sokumisa phakathi kozimele
  • i-pixel shader isetshenziselwa ukulingisa njengekhompyutha futhi izithunzi ze-UAV azisekelwa yiVRChat

Okokugcina uma unentshisekelo yokwazi kabanzi ngakho, ungabheka imininingwane Kulesi sixhumanisi esilandelayo.


Shiya umbono wakho

Ikheli lakho le ngeke ishicilelwe. Ezidingekayo ibhalwe nge *

*

*

  1. Ubhekele imininingwane: Miguel Ángel Gatón
  2. Inhloso yedatha: Lawula Ugaxekile, ukuphathwa kwamazwana.
  3. Ukusemthethweni: Imvume yakho
  4. Ukuxhumana kwemininingwane: Imininingwane ngeke idluliselwe kubantu besithathu ngaphandle kwesibopho esisemthethweni.
  5. Isitoreji sedatha: Idatabase ebanjwe yi-Occentus Networks (EU)
  6. Amalungelo: Nganoma yisiphi isikhathi ungakhawulela, uthole futhi ususe imininingwane yakho.