프로젝트 소개
Bevy Replicon은 Bevy 게임 엔진을 위해 설계된 서버 권위 복제 크레이트입니다. 견고하고 고도로 최적화된 프레임워크를 제공하여 게임 내 멀티플레이어 네트워킹 구현을 단순화하는 것을 목표로 합니다.
### 주요 기능
- **자동 월드 복제**: 서버와 클라이언트 간 게임 월드 동기화를 처리합니다.
- **원격 이벤트 및 트리거**: 네트워크를 통해 작업을 실행할 수 있습니다.
- **권한 부여 지원**: 클라이언트 작업을 검증하기 위한 내장 훅을 제공합니다.
- **클라이언트 가시성 제어**: 어떤 엔티티와 컴포넌트가 어떤 클라이언트에 표시되는지 세밀하게 제어합니다.
- **ECS 기반 동기화 규칙**: Bevy의 ECS(Entity Component System) 관계를 사용하여 복제 규칙을 정의합니다.
- **사용자 정의 직렬화**: 표준 `serde` 트레이트를 구현하지 않는 `Box<dyn Reflect>`와 같은 복잡한 타입에 대해서도 사용자 정의 직렬화 로직을 지원합니다.
- **추상화된 게임 로직**: 동일한 코드베이스가 싱글플레이어, 클라이언트, 전용 서버 또는 리슨 서버로 실행될 수 있게 합니다.
- **내장 I/O 없음**: 특정 네트워크 전송 프로토콜과 분리되어 있어 다양한 메시징 백엔드와 통합할 수 있습니다.
- **최적화 및 견고성**: 성능을 위해 크게 최적화되었으며, 높은 테스트 커버리지와 `no_std` 환경 지원을 갖추고 있습니다.
### 생태계 및 통합
Replicon은 다음을 포함한 여러 메시징 백엔드와 통합됩니다:
- `bevy_replicon_renet` 및 `bevy_replicon_renet2` (Bevy Renet용)
- `bevy_replicon_quinnet` (Bevy Quinnet용)
- `aeronet_replicon` (Aeronet용)
- `bevy_replicon_matchbox` (Matchbox용)
또한 생태계는 `bevy_rewind` 및 `bevy_timewarp`와 같은 라이브러리를 통해 클라이언트 측 예측, 보간 및 롤백을 지원합니다.
### 호환성
이 크레이트는 Bevy 0.10부터 0.19까지 다양한 Bevy 엔진 버전과 엄격한 유의적 버전 관리 호환성을 유지합니다.
### 라이선스
Apache License 2.0 또는 MIT License로 배포됩니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.