Rust GPU, un inseme di strumenti per sviluppà shaders in Rust

A cumpagnia di sviluppu di ghjocu Embark Studios hà publicatu a prima versione sperimentale di u prugettu GPU Rust, chì hà per scopu di aduprà a lingua Rust per sviluppà u codice GPU. 

U desideriu di aduprà Rust per scrive prugrammi per GPU deriva micca solu da e caratteristiche di sicurezza è di alte prestazioni, ma dinò di a necessità d'ottene strumenti muderni per travaglià cù pacchetti è moduli per migliurà l'efficienza di u prucessu di sviluppu.

Rust GPU cumpagnia di sviluppu Embark Studios usa ancu Rust in u so mutore di ghjocu è travaglia per facilità u scambiu di codice Rust trà u CPU è a GPU.

Sicondu elli, storicamente, in ghjochi, a prugrammazione GPU hè stata fatta scrivendu HLSL o, in una misura minore, GLSL. Si tratta di linguaghji di prugrammazione simplici chì anu evolutu à fiancu à l'APIs di rendering in l'annu

Tuttavia, cume i motori di ghjocu sò evoluti, queste lingue ùn anu micca furnitu meccanismi per trattà e basi di codici grandi, è in generale sò ritardati paragunatu à l'altri linguaghji di prugrammazione.

Mentre ci sò generalmente alternative megliu per e duie lingue, nimu hè in una pusizione per rimpiazzà HLSL o GLSL.

Sia perchè sò bluccati da u fornitore sia perchè ùn sò micca supportati cù u pipeline di grafica tradiziunale. Esempii di questu includenu CUDA è OpenCL. È mentre i tentativi sò stati fatti per creà a lingua in questu spaziu, nimu di elli ùn hà guadagnatu una trazione notevuli in a cumunità gamedev.

Rust GPU cuntinueghja à sviluppà idee da u prugettu RLSL, In quale un tentativu hè statu fattu per creà un compilatore Rust à l'SMIR-V generic shader intermediate, chì hè prupostu in l'API Vulkan è supportatu in OpenGL 4.6.

À u so stadiu attuale di sviluppu, a GPU Rust vi permette dighjà eseguisce ombreggiatori grafichi semplici è compilà una parte significativa di a biblioteca standard di basa di Rust. In listessu tempu, u prugettu hè sempre luntanu da esse prontu per un usu diffusu, per esempiu i cicli ùn sò ancu supportati da shaders.

In Imbarcu, avemu custruitu u nostru propiu mutore di ghjocu da zero in Rust. Avemu una sperienza precedente in u sviluppu internu di u prototipu RLSL è avemu una squadra di eccellenti ingegneri di rendering chì sò familiarizati cù i prublemi di e lingue shader d'oghje, sia da ghjochi, mutori di ghjocu è altre industrie. Dunque, credemu chì simu in una pusizione unica per pruvà à risolve stu prublema.

Vulemu simplificà u nostru sviluppu internu cù una sola grande lingua, custruisce una cumunità grafica open source è ecosistema, facilità a spartera di codice trà GPU è CPU, è più impurtante - abilita i nostri utenti (futuri) è altri sviluppatori avè più Rapidamente creà esperienze impegnative è impegnative.

Basatu annantu à u codice in lingua Rust, hè furmata una raprisentazione di l'ombreggiatori SPIR-V, per a generazione di a quale hè statu sviluppatu un backend speciale per u compilatore Rust, chì funziona per analogia cù u generatore di codice cranelift adupratu per compilà in una rappresentazione WebAssembly.

L'approcciu attuale hè di supportà l'API grafica Vulkan è e viste SPIR-V, ma i generatori sò previsti per l'avvene di vista DXIL (DirectX) è WGSL (WebGPU) shader. Custruendu nantu à Cargo è crates.io, sò sviluppati strumenti per sviluppà è publicà pacchetti cù shaders in furmatu SPIR-V.

Infine, se vulete sapè di più nantu à stu prughjettu, pudete verificà i dettagli in u repositoriu di u prugettu, u ligame hè questu.

In quantu à quelli chì sò interessati à pudè cunnosce u codice, devenu sapè chì u codice hè publicatu sottu à e licenze MIT è Apache 2.0 è hè pussibule ottene lu da u ligame sottu.

È ponu ancu cunsultà a ducumentazione, chì hè dighjà preparata per i sviluppatori in modu chì possinu travaglià nant'à Linux, Windows è Mac. cunsultate a guida à stu ligame.


U cuntenutu di l'articulu aderisce à i nostri principii di etica edituriale. Per signalà un errore cliccate quì.

Un cummentariu, lasciate u vostru

Lasciate u vostru cummentariu

U vostru indirizzu email ùn esse publicatu.

*

*

  1. Responsabile di i dati: Miguel Ángel Gatón
  2. Scopu di i dati: Cuntrolla SPAM, gestione di cumenti.
  3. Legitimazione: U vostru accunsentu
  4. Cumunicazione di i dati: I dati ùn seranu micca cumunicati à terzi, eccettu per obbligazione legale.
  5. Archiviazione di dati: Base di dati ospitata da Occentus Networks (UE)
  6. Diritti: In ogni mumentu pudete limità, recuperà è cancellà e vostre informazioni.

  1.   Autopilot dijo

    Rust s'impegna, speremu micca un'altra "Scala mortale".