Dalja e parë e motorit të hapur shumëpërdorues për lojëra Ambient

Pas një vit zhvillimi, është prezantuar një version i parë i motorit të ri të lojrave ambientale. Motori ofron një runtime për krijimin e lojërave shumëlojëshe dhe aplikacioneve 3D, të cilat kompilohet në formatin WebAssembly dhe përdorin API WebGPU për renderim. Kodi është shkruar në gjuhën Rust dhe shpërndahet nën licencën MIT.

Detyra kryesore gjatë zhvillimit të Ambient është ofrimi i mjeteve që thjeshtojnë zhvillimin e lojërave shumëlojëshe dhe bëjnë që krijimi i tyre të mos jetë më i vështirë se ai i projekteve njëlojëshe. Motori fillimisht është orientuar për të krijuar një runtime universale, duke mbështetur zhvillimin e lojërave dhe aplikacioneve në çdo gjuhë programimi, për të cilat është e mundur kompilimi në kodin ndërmjetës WebAssembly. Megjithatë, në versionin e parë për momentin është implementuar vetëm mbështetje për zhvillimin në gjuhën Rust.

Veçoritë kryesore të motorit të ri:

  • MbĂ«shtetje transparente e ndĂ«rveprimit nĂ« rrjet. Motori kombinon funksionet e klientit dhe serverit, ofron tĂ« gjithĂ« komponentĂ«t e nevojshĂ«m pĂ«r krijimin e logjikĂ«s sĂ« klientit dhe serverit, dhe gjithashtu sinkronizon automatikisht statusin e serverit te klientĂ«t. NĂ« anĂ«n e klientit dhe serverit pĂ«rdoret njĂ« model i pĂ«rbashkĂ«t tĂ« dhĂ«nash, çka thjeshton transferimin e kodit midis backend-it dhe frontend-it.
  • Kryerja e çdo moduli nĂ« njĂ« mjedis tĂ« izoluar, duke kufizuar ndikimin e kodit qĂ« nuk Ă«shtĂ« i besueshĂ«m. Mbyllja e papritur e modulit nuk çon nĂ« mbylljen e papritur tĂ« gjithĂ« aplikacionit.
  • Arkitektura e orientuar nga tĂ« dhĂ«nat (Data-oriented). Ofrimi i njĂ« modeli tĂ« dhĂ«nash tĂ« bazuar nĂ« sistemin e komponentĂ«ve, me tĂ« cilĂ«t mund tĂ« manipulojĂ« çdo modul WASM. PĂ«rdorimi i modelit tĂ« projektimit ECS (Entity Component System). Ruajtja e tĂ« dhĂ«nave tĂ« tĂ« gjitha komponentĂ«ve nĂ« njĂ« DB tĂ« centralizuar nĂ« server, gjendja e sĂ« cilĂ«s replicohet automatikisht te klienti, i cili nĂ« anĂ«n e tij mund tĂ« zgjasĂ« tĂ« dhĂ«nat duke marrĂ« parasysh gjendjen lokale.
  • MundĂ«sia e krijimit tĂ« moduleve Ambient nĂ« çdo gjuhĂ« programimi, qĂ« kompilohet nĂ« WebAssembly (pĂ«r momentin mbĂ«shtetet vetĂ«m Rust).
  • Formimi nĂ« dalje tĂ« skedarĂ«ve ekzekutivĂ« universale, tĂ« cilĂ«t mund tĂ« ekzekutohen nĂ« Windows, macOS dhe Linux, dhe tĂ« funksionojnĂ« si klient dhe server.
  • MundĂ«sia pĂ«r tĂ« pĂ«rcaktuar komponentĂ«t dhe "konceptet" e veta (koleksione komponentesh). NĂ« projektet qĂ« pĂ«rdorin komponentĂ« dhe koncepte tĂ« njĂ«jta, sigurohet portabiliteti dhe ndarja e tĂ« dhĂ«nave, edhe nĂ«se kĂ«to tĂ« dhĂ«na nuk janĂ« specifikisht tĂ« dizajnuara pĂ«r t'u pĂ«rdorur nĂ« projekte tĂ« caktuara.
  • MbĂ«shtetje pĂ«r kompilimin e burimeve nĂ« formate tĂ« ndryshme, duke pĂ«rfshirĂ« .glb dhe .fbx. MundĂ«sia e ngarkimit tĂ« burimeve nĂ« rrjet — klienti mund tĂ« marrĂ« tĂ« gjitha burimet e nevojshme gjatĂ« lidhjes me serverin (mund tĂ« fillojĂ« tĂ« luajĂ« pa pritur deri sa tĂ« ngarkohen tĂ« gjitha burimet). Formate tĂ« modeleve FBX dhe glTF, formate tĂ« ndryshme tĂ« zĂ«rit dhe imazheve mbĂ«shteten.
  • NjĂ« sistem i avancuar i renderimit, duke pĂ«rdorur GPU pĂ«r tĂ« pĂ«rshpejtuar daljen dhe duke mbĂ«shtetur ekzekutimin e prerjes nĂ« zonĂ«n e dukshmĂ«risĂ« dhe kalimin nĂ« nivele detajesh nga ana e GPU. PĂ«rdorimi pĂ«r default i renderimit fizikisht korrekt (PBR), mbĂ«shtetje pĂ«r animacionin dhe harta e hijes nĂ« kaskadĂ«.
  • MbĂ«shtetje pĂ«r simulimin e proceseve fizike mbi bazĂ«n e motorit PhysX.
  • NjĂ« sistem ndĂ«rtimi tĂ« ndĂ«rfaqeve tĂ« pĂ«rdoruesit, i ngjashĂ«m me React.
  • NjĂ« sistem i unifikuar i inputit, i pavarur nga platforma aktuale.
  • NjĂ« sistem zĂ«ri hapĂ«sinor me filtra tĂ« mundshĂ«m pĂ«r t'u lidhur.

Zhvillimi është ende në fazën alfa. Nga funksionalitetet që nuk janë realizuar ende, mund të përmendim mundësinë e lansimit në Web, API klienti, API për menaxhimin e shumëproceseve, biblioteka për ndërtimin e ndërfaqeve të përdoruesit, API për përdorimin e shader-ve të veta, mbështetje për zërin, ngarkimin dhe ruajtjen e komponentëve ECS (Sistemi i Komponentëve Entitet), rifreskimin e burimeve gjatë funksionimit, dhe shkallëzimin automatik. serverësh, një redaktor për krijimin e përbashkët të hartave të lojërave dhe skenave të lojërave.

Luaj videon


Burimi: opennet.ru
Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster