„Rust GPU“ - įrankių rinkinys, skirtas plėtoti „Rust“ šešėlius

Žaidimų kūrimo įmonė „Embark Studios“ išleido pirmąjį eksperimentinį leidimą projekto Rūdijimo GPU, kuria siekiama vartoti Rust kalbą sukurti GPU kodą. 

Noras naudoti „Rust“ rašyti programas GPU lemia ne tik saugos ypatybės ir didelis našumas, bet ir būtinybę įsigyti šiuolaikinių įrankių, skirtų dirbti su paketais ir moduliais, siekiant pagerinti kūrimo proceso efektyvumą.

Rūdžių GPU kūrimo įmonė „Embark Studios“ žaidimų variklyje taip pat naudoja „Rust“ ir jis stengiasi palengvinti keitimąsi „Rust“ kodu tarp procesoriaus ir GPU.

Pagal juos, istoriškai žaidimuose GPU programavimas buvo atliekamas rašant HLSL arba, kiek mažiau, GLSL. Tai paprastos programavimo kalbos, kurios per daugelį metų vystėsi kartu su atvaizdavimo API.

Tačiau tobulėjant žaidimų varikliams, šios kalbos nepateikė mechanizmų, kaip tvarkytis su didelėmis kodų bazėmis, ir apskritai jie atsiliko, palyginti su kitomis programavimo kalbomis.

Nors apskritai yra geresnių alternatyvų abiem kalboms, nė viena iš jų negali pakeisti HLSL ar GLSL.

Arba todėl, kad juos blokuoja teikėjas, arba todėl, kad jie nepalaikomi su tradiciniu grafikos vamzdynu. To pavyzdžiai yra CUDA ir OpenCL. Ir nors šioje erdvėje bandyta sukurti kalbą, gamedevų bendruomenėje nė vienas iš jų nesulaukė pastebimo traukos.

„Rust GPU“ toliau plėtoja RLSL projekto idėjas, kuriame buvo bandoma sukurti „Rust“ kompiliatorių SPIR-V generiniam šešėlių tarpininkui, kuris yra siūlomas „Vulkan“ API ir palaikomas „OpenGL 4.6“.

Dabartiniame kūrimo etape „Rust GPU“ jau leidžia paleisti paprastus grafinius šešėlius ir surinkti didelę pagrindinės „Rust“ bibliotekos dalį. Tuo pačiu metu projektas vis dar nėra paruoštas plačiam naudojimui, pavyzdžiui, šešėliai dar nepalaiko kilpų.

„Embark“ gaminome savo žaidimų variklį nuo nulio „Rust“. Turime išankstinės patirties kuriant RLSL prototipą namuose ir turime puikių atvaizdavimo inžinierių komandą, kuri yra susipažinusi su žaidimų, žaidimų variklių ir kitų pramonės šakų šiuolaikinių šešėlinių kalbų problemomis. Todėl manome, kad turime unikalią padėtį bandydami išspręsti šią problemą.

Mes norime supaprastinti savo vidaus plėtrą viena puikia kalba, sukurti atviro kodo grafikos bendruomenę ir ekosistemą, palengvinti kodo mainus tarp GPU ir procesoriaus, o svarbiausia - įgalinti mūsų (būsimus) vartotojus ir kitus kūrėjus greičiau sukurti įtraukianti ir įtraukianti patirtis.

Remiantis „Rust“ kalbos kodu, yra suformuotas „SPIR-V“ šešėlių atvaizdas, kurio kartai sukurta speciali „Rust“ kompiliatoriaus backend, veikianti pagal analogiją su „cranelift“ kodų generatoriumi, naudojamu kompiliuojant į reprezentacinį „WebAssembly“. .

Dabartinis požiūris yra palaikyti „Vulkan Graphics“ API ir SPIR-V rodinius, bet planuojami generatoriai DXIL (DirectX) ir WGSL (WebGPU) šešėlinių vaizdų ateičiai. Remiantis „Cargo“ ir „crates.io“, kuriami įrankiai, skirti kurti ir paskelbti paketus su šešėliais SPIR-V formatu.

Galiausiai, jei norite sužinoti daugiau apie šį projektą, galite patikrinti išsamią informaciją projekto saugykloje, nuoroda yra ši.

Kalbant apie tuos, kurie nori žinoti kodą, jie turėtų žinoti, kad kodas yra paskelbtas pagal MIT ir „Apache 2.0“ licencijas ir jį galima gauti iš žemiau pateiktos nuorodos.

Jie taip pat gali susipažinti su dokumentais, kurie jau paruošti kūrėjams, kad jie galėtų dirbti su „Linux“, „Windows“ ir „Mac“. skaitykite vadovą šioje nuorodoje.


Komentaras, palikite savo

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   Autopilotas sakė

    Rūdis pakyla, tikiuosi, ne dar viena „mirtina Scala“.