Ambient, avatud lähtekoodiga mitme mängijaga mängumootor

Ümbritsev

Ambient on käituskeskkond suure jõudlusega mitme mängijaga mängude ja 3D-rakenduste loomiseks, mida toidavad WebAssembly, Rust ja WebGPU.

Pärast aastast arengut, se avalikustas esimese väljalase uuest avatud lähtekoodiga mängumootorist ümbritsev. Mootor pakub käitusaega mitme mängijaga mängude ja 3D-rakenduste loomiseks mis on kompileeritud WebAssembly esituseks ja kasutavad renderdamiseks WebGPU API-d.

Ambienti arendamise põhieesmärk on pakkuda tööriistu, mis lihtsustavad mitme mängijaga mängude arendamist ega muuda nende loomist ühe mängijaga projektidest keerulisemaks.

Mootori eesmärk on esialgu luua universaalne käitusaeg, mis toetab mängude ja rakenduste arendamist mis tahes programmeerimiskeeles, mille jaoks on võimalik WebAssembly vahepealse koodi kompileerimine. Esimene versioon toetab aga seni ainult Rusti arendamist.

Ambienti kohta

Ambientist silma paistvatest omadustest mainitakse seda on läbipaistev võrgustiku tugi. Mootor ühendab endas kliendi ja serveri funktsioonid, pakub kõiki vajalikke komponente kliendi ja serveri loogika loomiseks ning sünkroonib automaatselt klientide serveri oleku.

Mainitakse ka seda kliendi ja serveri poolel kasutatakse ühist andmemudelit, mis hõlbustab koodi edastamist tausta- ja esiprogrammi vahel. See käivitab iga mooduli oma eraldatud keskkonnas, et piirata ebausaldusväärse koodi mõju, ja ühe mooduli kokkujooksmine ei põhjusta kogu rakenduse kokkujooksmist.

Ambient, cSellel on andmetele orienteeritud arhitektuur, andes seeläbi andmemudeli, mis põhineb komponentide süsteemil, mida iga WASM saab manipuleerida. ECS (Entity Component System) disainimustri kasutamine.

Lisaks sellele ka salvestab kõigi komponentide andmed serveri tsentraliseeritud andmebaasir, mille olek kopeeritakse automaatselt kliendile, mis omakorda võib kohalikku olekut arvesse võttes andmeid laiendada.

Võimalus luua Ambient-mooduleid mis tahes programmeerimiskeeles, mis kompileerib WebAssemblyga (seni on toetatud ainult Rust), genereerides samal ajal universaalseid käivitatavaid väljundfaile, võib töötada Windowsis, macOS-is ja Linuxis ning töötada kliendi ja serverina.

Teisest küljest rõhutatakse ka sedaon võime määratleda oma komponente ja "kontseptsioone" (komponentide kogud). Projektid, mis kasutavad samu komponente ja kontseptsioone, tagavad andmete teisaldatavuse ja ühiskasutuse, isegi kui andmed ei ole spetsiaalselt konkreetsetes projektides kasutamiseks mõeldud.

Muudest funktsioonidest, mis Ambientist silma paistavad:

  • Toetus ressursside koostamiseks erinevates vormingutes, sealhulgas ".glb" ja ".fbx". Võimalus striimida ressursse üle võrgu: klient saab serveriga ühenduse loomisel kõik vajalikud ressursid kätte (võid alustada mängimist ootamata kõigi ressursside laadimist).
  • Toetatud on FBX ja glTF mudelivormingud, erinevad heli- ja pildivormingud.
  • Täiustatud renderdussüsteem, mis kasutab GPU-d renderduse kiirendamiseks ning toetab GPU-poolset LOD-i ja kärpimist.
  • Vaikimisi kasutatakse füüsiliselt põhinevat renderdamist (PBR), animatsiooni ja kaskaadsete varikaartide tugi.
  • Tugi füüsiliste protsesside simuleerimiseks PhysX mootoril.
  • Reaktsioonitaoline kasutajaliidese ehitussüsteem.
  • Praegusest platvormist sõltumatu ühtne sisenemissüsteem.
  • Ruumiline helisüsteem plug-in filtritega.
  • Areng on alles alfa staadiumis. Funktsioonidest, mida pole veel rakendatud, võime märkida veebis töötamise võimalust, kliendi API-d, API-d mitme lõime haldamiseks, teeki kasutajaliidese loomiseks, API-d oma varjutajate kasutamiseks, heli tuge, laadimist. ja salvestada
  • ECS (Entity Component System) komponendid, ressursside käigupealt laadimine, serveri automaatne skaleerimine, redaktor mängukaartide ja mängustseenide koosloomiseks.

Lõpetuseks, need, kes soovivad selle kohta rohkem teada saada, peaksid teadma, et kood on kirjutatud Rust keeles ja on levitatakse MIT litsentsi alusel.


Jäta oma kommentaar

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

*

*

  1. Andmete eest vastutav: AB Internet Networks 2008 SL
  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.