오픈 소스 멀티플레이어 게임 엔진 Ambient

포위한

Ambient는 WebAssembly, Rust 및 WebGPU로 구동되는 고성능 멀티플레이어 게임 및 3D 애플리케이션을 만들기 위한 런타임입니다.

XNUMX년의 개발 끝에 S전자가 첫 번째 릴리스를 발표했습니다. 새로운 오픈 소스 게임 엔진의 주변. 엔진 멀티플레이어 게임 및 3D 애플리케이션 제작을 위한 런타임 제공 WebAssembly 표현으로 컴파일되고 렌더링을 위해 WebGPU API를 사용합니다.

Ambient 개발의 주요 목표는 멀티플레이어 게임의 개발을 단순화하고 싱글 플레이어 프로젝트보다 게임 제작을 더 어렵게 만드는 도구를 제공하는 것입니다.

이 엔진은 초기에 중간 WebAssembly 코드로의 컴파일이 가능한 모든 프로그래밍 언어로 게임 및 애플리케이션 개발을 지원하는 범용 런타임을 만드는 것을 목표로 합니다. 그러나 첫 번째 버전은 지금까지 Rust 개발만 지원합니다.

앰비언트 소개

앰비언트에서 두드러지는 특징 중, 네트워킹에 대한 투명한 지원. 엔진은 클라이언트와 서버의 기능을 결합하고 클라이언트와 서버 논리를 생성하는 데 필요한 모든 구성 요소를 제공하며 클라이언트에서 서버 상태를 자동으로 동기화합니다.

또한 언급됩니다 공통 데이터 모델은 클라이언트와 서버 측에서 사용됩니다., 백엔드와 프런트엔드 간에 코드를 쉽게 전송할 수 있습니다. 자체 격리된 환경에서 각 모듈을 실행하여 신뢰할 수 없는 코드의 영향을 제한하고 하나의 모듈이 충돌해도 전체 애플리케이션이 충돌하지 않습니다.

주변, c데이터 지향 아키텍처를 가지고 있으며, 따라서 각 WASM이 조작할 수 있는 구성 요소 시스템을 기반으로 데이터 모델을 제공합니다. ECS(Entity Component System) 디자인 패턴을 사용합니다.

그 외에도, 서버의 중앙 집중식 데이터베이스에 모든 구성 요소의 데이터를 저장합니다.r의 상태는 자동으로 클라이언트에 복제되며 클라이언트는 로컬 상태를 고려하여 데이터를 확장할 수 있습니다.

범용 실행 출력 파일을 생성하면서 WebAssembly로 컴파일되는 모든 프로그래밍 언어로 Ambient 모듈을 생성하는 기능(지금까지 Rust만 지원됨)은 Windows, macOS 및 Linux에서 실행할 수 있으며 클라이언트 및 서버로 작동할 수 있습니다.

한편으로는 다음과 같이 강조하기도 한다.자체 구성 요소 및 "개념"을 정의할 수 있는 기능이 있습니다. (구성 요소 모음). 동일한 구성 요소와 개념을 사용하는 프로젝트는 데이터가 특정 프로젝트에서 사용하도록 특별히 설계되지 않은 경우에도 데이터를 이식하고 공유할 수 있도록 합니다.

Ambient에서 눈에 띄는 다른 기능은 다음과 같습니다.

  • ".glb" 및 ".fbx"를 포함하여 다양한 형식의 리소스 컴파일 지원. 네트워크를 통한 리소스 스트리밍 기능: 클라이언트는 서버에 연결할 때 필요한 모든 리소스를 얻을 수 있습니다(모든 리소스가 로드될 때까지 기다리지 않고 플레이를 시작할 수 있음).
  • FBX 및 glTF 모델 형식, 다양한 사운드 및 이미지 형식이 지원됩니다.
  • GPU를 사용하여 렌더링을 가속화하고 GPU 측 LOD 및 클리핑을 지원하는 고급 렌더링 시스템입니다.
  • 기본적으로 물리적 기반 렌더링(PBR) 사용, 애니메이션 및 계단식 그림자 맵 지원.
  • PhysX 엔진 기반의 물리적 프로세스 시뮬레이션 지원.
  • React와 유사한 UI 구축 시스템.
  • 현재 플랫폼과 독립적인 통합 엔트리 시스템.
  • 플러그인 필터가 있는 공간 사운드 시스템.
  • 개발은 아직 알파 단계에 있습니다. 아직 구현되지 않은 기능 중 웹에서 실행하는 기능, 클라이언트 API, 멀티 스레딩 관리용 API, 사용자 인터페이스 생성용 라이브러리, 자체 셰이더 사용용 API, 사운드 지원, 로드에 주목할 수 있습니다. 그리고 저장
  • ECS(엔티티 구성 요소 시스템) 구성 요소, 즉석에서 리소스 다시 로드, 자동 서버 확장, 게임 맵과 게임 장면을 공동 생성하는 편집기.

마지막으로, 그것에 대해 더 알고 싶은 사람들은 코드가 Rust로 작성되었고 MIT 라이센스에 따라 배포됩니다.


코멘트를 첫번째로 올려

코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.