Ambient, motor za igre za više igrača otvorenog koda

okolni

Ambient je runtime za kreiranje igara za više igrača i 3D aplikacija visokih performansi, koje pokreću WebAssembly, Rust i WebGPU.

Nakon godinu dana razvoja, se je predstavio prvo izdanje novog motora za igre otvorenog koda Ambijentalno. Motor pruža runtime za kreiranje igara za više igrača i 3D aplikacija koji se kompajliraju u WebAssembly reprezentaciju i koriste WebGPU API za renderiranje.

Ključni cilj u razvoju Ambienta je pružiti alate koji pojednostavljuju razvoj igara za više igrača i čine njihovo kreiranje ništa težim od projekata za jednog igrača.

Motor u početku ima za cilj da stvori univerzalno vreme izvođenja koje podržava razvoj igara i aplikacija u bilo kom programskom jeziku za koji je moguća kompilacija u srednji WebAssembly kod. Međutim, prva verzija podržava samo Rust razvoj do sada.

About Ambient

Od karakteristika koje se izdvajaju od Ambienta spominje se to ima transparentnu podršku za umrežavanje. Mašina kombinuje funkcije klijenta i servera, obezbeđuje sve potrebne komponente za kreiranje klijentske i serverske logike i automatski sinhronizuje stanje servera na klijentima.

Takođe se spominje da zajednički model podataka se koristi na strani klijenta i servera, što olakšava prijenos koda između pozadine i frontenda. Pokreće svaki modul u sopstvenom izolovanom okruženju kako bi ograničio uticaj nepouzdanog koda, a rušenje jednog modula ne ruši celu aplikaciju.

Ambijent, cIma arhitekturu orijentisanu na podatke, čime se obezbeđuje model podataka zasnovan na sistemu komponenti kojima svaki WASM može da manipuliše. Korištenje obrasca dizajna ECS (Entity Component System).

Pored toga, takođe pohranjuje podatke svih komponenti u centraliziranu bazu podataka na serverur, čije se stanje automatski replicira na klijenta, koji zauzvrat može proširiti podatke uzimajući u obzir lokalno stanje.

Mogućnost kreiranja Ambient modula u bilo kojem programskom jeziku koji se kompajlira u WebAssembly (do sada je podržan samo Rust), uz generiranje univerzalnih izvršnih izlaznih datoteka, može raditi na Windows, macOS i Linux, i raditi kao klijent i kao server.

S druge strane, to se takođe ističeima sposobnost da definiše sopstvene komponente i "koncepte" (zbirke komponenti). Projekti koji koriste iste komponente i koncepte osiguravaju da su podaci prenosivi i dijeljeni, čak i ako podaci nisu posebno dizajnirani za upotrebu u određenim projektima.

Od ostalih karakteristika koje se izdvajaju od Ambienta:

  • Podrška za kompajliranje resursa u različitim formatima, uključujući ".glb" i ".fbx". Mogućnost strujanja resursa preko mreže: klijent može dobiti sve potrebne resurse kada se poveže na server (možete početi igrati bez čekanja da se svi resursi učitaju).
  • Podržani su formati FBX i glTF modela, različiti formati zvuka i slike.
  • Napredni sistem renderovanja koji koristi GPU za ubrzanje renderovanja i podržava LOD i kliping na strani GPU-a.
  • Upotreba fizički baziranog renderiranja (PBR) prema zadanim postavkama, podrška za animaciju i kaskadne mape sjena.
  • Podrška za simulaciju fizičkih procesa na bazi PhysX motora.
  • Sistem za izgradnju korisničkog sučelja sličan reakciji.
  • Jedinstveni sistem ulaska nezavisan od trenutne platforme.
  • Prostorno ozvučenje sa plug-in filterima.
  • Razvoj je još u alfa fazi. Od funkcionalnosti koje još nisu implementirane, možemo istaći mogućnost rada na webu, klijentski API, API za upravljanje multi-threadingom, biblioteku za kreiranje korisničkog sučelja, API za korištenje vlastitih shadera, zvučnu podršku, učitavanje i sačuvaj
  • ECS (Entity Component System) komponente, ponovno učitavanje resursa u hodu, automatsko skaliranje servera, uređivač za zajedničko kreiranje mapa igara i scena igre.

Konačno, za one koji su zainteresovani da saznaju više o tome, trebalo bi da znaju da je kod napisan u Rustu i jeste distribuira pod MIT licencom.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.