Ambient, open source herný engine pre viacerých hráčov

Okolité

Ambient je runtime na vytváranie vysokovýkonných hier pre viacerých hráčov a 3D aplikácií využívajúcich technológie WebAssembly, Rust a WebGPU.

Po roku vývoja sa se odhalil prvé vydanie nového herného enginu s otvoreným zdrojovým kódom Okolité. Motor poskytuje runtime na vytváranie hier pre viacerých hráčov a 3D aplikácií ktoré sú zostavené do reprezentácie WebAssembly a na vykresľovanie používajú rozhranie WebGPU API.

Kľúčovým cieľom pri vývoji Ambientu je poskytnúť nástroje, ktoré zjednodušia vývoj hier pre viacerých hráčov a urobia ich tvorbu o nič zložitejšou ako projekty pre jedného hráča.

Prvotným cieľom motora je vytvoriť univerzálny runtime, ktorý podporuje vývoj hier a aplikácií v akomkoľvek programovacom jazyku, pre ktorý je možná kompilácia do stredného kódu WebAssembly. Prvá verzia však zatiaľ podporuje iba vývoj Rust.

O prostredí

Z charakteristík, ktoré vyčnievajú z Ambientu, je spomenuté, že má transparentnú podporu pre vytváranie sietí. Motor kombinuje funkcie klienta a servera, poskytuje všetky potrebné komponenty na vytvorenie klientskej a serverovej logiky a automaticky synchronizuje stav servera na klientoch.

Tiež sa o tom hovorí na strane klienta a servera sa používa spoločný dátový model, čo uľahčuje prenos kódu medzi backendom a frontendom. Každý modul beží vo vlastnom izolovanom prostredí, aby sa obmedzil vplyv nedôveryhodného kódu, a pád jedného modulu nezrúti celú aplikáciu.

Okolité, cMá dátovo orientovanú architektúru, čím sa poskytuje dátový model založený na systéme komponentov, s ktorými môže každý WASM manipulovať. Použitie návrhového vzoru ECS (Entity Component System).

Okrem toho tiež ukladá údaje všetkých komponentov do centralizovanej databázy na serverir, ktorého stav sa automaticky replikuje klientovi, čo zase môže rozšíriť údaje s prihliadnutím na miestny stav.

Schopnosť vytvárať moduly Ambient v akomkoľvek programovacom jazyku, ktorý sa kompiluje do WebAssembly (zatiaľ je podporovaný iba Rust), a zároveň generovať univerzálne spustiteľné výstupné súbory, môže bežať na Windows, macOS a Linux a fungovať ako klient aj ako server.

Na druhej strane sa tiež zdôrazňuje, žemá schopnosť definovať svoje vlastné komponenty a „koncepty“ (kolekcie komponentov). Projekty, ktoré používajú rovnaké komponenty a koncepty, zabezpečujú prenosnosť a zdieľanie údajov, aj keď údaje nie sú špeciálne navrhnuté na použitie v konkrétnych projektoch.

Z ďalších funkcií, ktoré sa odlišujú od Ambientu:

  • Podpora kompilácie zdrojov v rôznych formátoch vrátane „.glb“ a „.fbx“. Schopnosť streamovať zdroje cez sieť: klient môže získať všetky potrebné zdroje pri pripojení k serveru (môžete začať hrať bez čakania na načítanie všetkých zdrojov).
  • Podporované sú formáty modelov FBX a glTF, rôzne zvukové a obrazové formáty.
  • Pokročilý systém vykresľovania, ktorý využíva GPU na zrýchlenie vykresľovania a podporuje LOD a orezávanie na strane GPU.
  • Štandardné použitie fyzicky založeného vykresľovania (PBR), podpora animácií a kaskádových tieňových máp.
  • Podpora pre simuláciu fyzikálnych procesov na základe PhysX engine.
  • Systém budovania používateľského rozhrania typu React.
  • Jednotný vstupný systém nezávislý od aktuálnej platformy.
  • Priestorový zvukový systém so zásuvnými filtrami.
  • Vývoj je zatiaľ vo fáze alfa. Z funkcionality, ktorá ešte nie je implementovaná, môžeme spomenúť možnosť spustenia na webe, klientske API, API na správu multi-threadingu, knižnicu na vytváranie používateľského rozhrania, API na používanie vlastných shaderov, podporu zvuku, zaťaženie a uložiť
  • Komponenty ECS (Entity Component System), opätovné načítanie zdrojov za behu, automatické škálovanie servera, editor na spoluvytváranie herných máp a herných scén.

Nakoniec, pre tých, ktorí majú záujem dozvedieť sa o ňom viac, mali by vedieť, že kód je napísaný v Ruste a je distribuované pod licenciou MIT.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.