Ambient, mesin game multipemain sumber terbuka

Ambient

Ambient adalah runtime untuk membuat game multipemain berperforma tinggi dan aplikasi 3D, didukung oleh WebAssembly, Rust, dan WebGPU.

Setelah satu tahun pengembangan, se meluncurkan rilis pertama dari mesin game open source baru Sekelilingnya. Motor menyediakan runtime untuk membuat game multipemain dan aplikasi 3D yang dikompilasi menjadi representasi WebAssembly dan menggunakan API WebGPU untuk rendering.

Tujuan utama dalam mengembangkan Ambient adalah menyediakan alat yang menyederhanakan pengembangan game multipemain dan membuat pembuatannya tidak lebih sulit daripada proyek pemain tunggal.

Mesin awalnya bertujuan untuk membuat runtime universal yang mendukung pengembangan game dan aplikasi dalam bahasa pemrograman apa pun yang memungkinkan kompilasi ke kode WebAssembly menengah. Namun, versi pertama sejauh ini hanya mendukung pengembangan Rust.

Tentang Ambien

Dari ciri-ciri yang menonjol dari Ambient, disebutkan itu memiliki dukungan transparan untuk jaringan. Mesin menggabungkan fungsi klien dan server, menyediakan semua komponen yang diperlukan untuk membuat logika klien dan server, dan secara otomatis menyinkronkan status server pada klien.

Disebutkan juga itu model data umum digunakan pada sisi klien dan server, yang memudahkan transfer kode antara backend dan frontend. Itu menjalankan setiap modul di lingkungannya sendiri yang terisolasi untuk membatasi dampak dari kode yang tidak dipercaya, dan menerjang satu modul tidak akan menerjang seluruh aplikasi.

Ambien, cIni memiliki arsitektur berorientasi data, sehingga memberikan model data berdasarkan sistem komponen yang dapat dimanipulasi oleh setiap WASM. Menggunakan pola desain ECS (Entity Component System).

Selain itu, juga menyimpan data semua komponen dalam database terpusat di serverr, yang statusnya secara otomatis direplikasi ke klien, yang pada gilirannya dapat memperluas data dengan mempertimbangkan status lokal.

Kemampuan untuk membuat modul Ambient dalam bahasa pemrograman apa pun yang dikompilasi ke WebAssembly (sejauh ini hanya mendukung Rust), sambil menghasilkan file keluaran universal yang dapat dieksekusi, dapat berjalan di Windows, macOS, dan Linux, dan berfungsi sebagai klien dan sebagai server.

Di sisi lain, juga digarisbawahimemiliki kemampuan untuk mendefinisikan komponen dan "konsep" sendiri (kumpulan komponen). Proyek yang menggunakan komponen dan konsep yang sama memastikan bahwa data bersifat portabel dan dibagikan, meskipun data tidak dirancang khusus untuk digunakan dalam proyek tertentu.

Dari fitur lain yang menonjol dari Ambient:

  • Dukungan untuk mengompilasi sumber daya dalam berbagai format, termasuk ".glb" dan ".fbx". Kemampuan untuk mengalirkan sumber daya melalui jaringan: klien bisa mendapatkan semua sumber daya yang diperlukan saat terhubung ke server (Anda dapat mulai bermain tanpa menunggu semua sumber daya dimuat).
  • Format model FBX dan glTF, berbagai format suara dan gambar didukung.
  • Sistem rendering canggih yang menggunakan GPU untuk mempercepat rendering dan mendukung LOD dan kliping sisi GPU.
  • Penggunaan rendering berbasis fisik (PBR) secara default, dukungan untuk animasi dan cascading shadow maps.
  • Dukungan untuk simulasi proses fisik berdasarkan mesin PhysX.
  • Sistem bangunan UI yang mirip reaksi.
  • Sistem entri terpadu yang independen dari platform saat ini.
  • Sistem suara spasial dengan filter plug-in.
  • Pengembangan masih dalam tahap alfa. Dari fungsionalitas yang belum diimplementasikan, kami dapat mencatat kemampuan untuk berjalan di Web, API klien, API untuk mengelola multi-threading, perpustakaan untuk membuat antarmuka pengguna, API untuk menggunakan shader Anda sendiri, dukungan suara, memuat dan simpan
  • Komponen ECS (Entity Component System), memuat ulang sumber daya dengan cepat, penskalaan server otomatis, editor untuk membuat bersama peta game dan adegan game.

Akhirnya, bagi mereka yang tertarik untuk mempelajarinya lebih lanjut, mereka harus tahu bahwa kode tersebut ditulis dalam Rust dan didistribusikan di bawah lisensi MIT.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Bertanggung jawab atas data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.