Rust GPU, tööriistakomplekt varjundite arendamiseks Rustis

Mängude arendamise ettevõte Embark Studios andis välja esimese eksperimentaalse väljaande projekti Rooste GPU, mille eesmärk on kasutada rooste keelt GPU koodi väljatöötamiseks. 

Soov kasutada Roostet GPU jaoks programmide kirjutamiseks tuleneb mitte ainult turvaelementidest ja kõrgest jõudlusest, aga ka vajadusest hankida kaasaegsed tööriistad pakettide ja moodulitega töötamiseks, et parandada arendusprotsessi tõhusust.

Rooste GPU arendusettevõte Embark Studios kasutab Rust ka oma mängumootoris ja töötab selle nimel, et hõlbustada Rust-koodi vahetamist protsessori ja GPU vahel.

Nende sõnul ajalooliselt on mängudes GPU programmeerimine tehtud HLSL-i kirjutamise teel või vähemal määral GLSL. Need on lihtsad programmeerimiskeeled, mis on aastate jooksul API-de renderdamise kõrval arenenud.

Kuid mängumootorite arenedes ei ole need keeled pakkunud mehhanisme suurte koodibaasidega tegelemiseks ja üldiselt nad on teiste programmeerimiskeeltega võrreldes maha jäänud.

Kuigi mõlema keele jaoks on üldiselt paremaid alternatiive, ei suuda kumbki asendada HLSL-i ega GLSL-i.

Kas sellepärast, et pakkuja on need blokeerinud, või seetõttu, et neid ei toetata traditsioonilise graafikatorustikuga. Selle näiteks on CUDA ja OpenCL. Ja kuigi selles ruumis on püütud keelt luua, pole ükski neist gamedevi kogukonnas märgatavat tõmmet saavutanud.

Rust GPU jätkab RLSL projekti ideede väljatöötamist, milles SPIR-V üldise varjutusvaheühenduse jaoks prooviti luua Rust kompilaator, mis on välja pakutud Vulkani API-s ja mida toetab OpenGL 4.6.

Praeguses arenguetapis võimaldab Rust GPU juba käitada lihtsaid graafilisi varje ja kompileerida olulise osa Rusti standardsest põhiraamatukogust. Samal ajal pole projekt veel kaugeltki laialdaseks kasutamiseks valmis, näiteks varjutajad ei toeta silmusid veel.

Embarkis oleme Rustis oma mängumootorit nullist ehitanud. Meil on varasem kogemus RLSL-i prototüübi ettevõttesisese väljatöötamise alal ja meil on suurepärane renderdamise inseneride meeskond, kes tunneb tänapäevaste varjundikeelte probleeme nii mängudest, mängumootoritest kui ka muudest tööstusharudest. Seetõttu usume, et meil on ainulaadne positsioon selle probleemi lahendamiseks.

Soovime sujuvamaks muuta oma ettevõttesisest arendust ühe suurepärase keelega, luua avatud lähtekoodiga graafikakogukonna ja ökosüsteemi, hõlbustada koodijagamist GPU ja protsessori vahel ning mis peamine - võimaldada meie (tulevastel) kasutajatel ja kaasarendajatel on rohkem Looge kiiresti kaasahaaravaid ja kaasahaaravaid kogemusi.

Roostekeelse koodi põhjal moodustatakse SPIR-V varjundite esindus, kelle genereerimiseks on välja töötatud spetsiaalne Rust-kompilaatori taustaprogramm, mis töötab analoogia põhjal esituseks kompileerimiseks kasutatava kranelift-koodigeneraatoriga. Veebikoosolek.

Praegune lähenemisviis on Vulkani graafika API ja SPIR-V vaadete toetamine, kuid DXIL (DirectX) ja WGSL (WebGPU) varjundvaadete tulevikku on kavandatud generaatorid. Rakenduse Cargo ja crates.io põhjal töötatakse välja tööriistu varjunditega pakettide väljatöötamiseks ja avaldamiseks SPIR-V-vormingus.

Lõpuks, kui soovite selle projekti kohta rohkem teada saada, saate üksikasju vaadata projekti hoidlas, link on see.

Mis puudutab neid, kes tunnevad huvi koodi tundmise vastu, siis peaksid nad teadma, et kood on avaldatud MIT ja Apache 2.0 litsentside all ja seda on võimalik hankida allolevalt lingilt.

Samuti saavad nad tutvuda dokumentidega, mis on arendajatele juba ette valmistatud, et nad saaksid töötada Linuxis, Windowsis ja Macis. tutvuge selle lingi juhendiga.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.

  1.   Autopiloot DIJO

    Rooste võtab õhku, loodetavasti mitte järjekordne "surmav Scala".