UE 에서 싱글 플레이어 게임이 PvP가 가능한 멀티 플레이어 게임이 되기까지
1) 접속 플로우
- 로그인 / 커넥션 / 오너십 / 역할
2) 액터 리플리케이션
- 연관성 / 우선권 / 빈도
- 서버와 클라이언트 간에 동일한 액터가 나타나도록 만드는 기능입니다.
- 액터 업데이트 방식은 크게 두 가지 방식( RPC 방식, 프로퍼티 리플리케이션 방식 )으로 나뉩니다.
액터 리플리케이션
액터 오브젝트 리플리케이션을 여러모로 살펴봅니다.
docs.unrealengine.com
2-1) RPC (원격 함수 호출, Remote Procedure Call)
- 이전에는 Function Replication 이라 불렸습니다.
- 신뢰성 / 검증
언리얼 엔진의 RPC
네트워크를 통해 함수 리플리케이션을 지정합니다.
dev.epicgames.com
2-2) 프로퍼티 리플리케이션
- 상태 / 동기화
- 액터가 가진 속성을 동기화합니다.
- RPC 에 비해 속도가 조금 느리지만, 게임을 구성하는 주요한 속성을 확실하게 전달받고 싶을 때 사용합니다. 느리기 때문에 정보를 최적화해서 전달하는 것이 필요합니다.
언리얼 엔진의 프로퍼티 리플리케이션
액터 프로퍼티 리플리케이션 방법에 대한 상세 정보입니다.
dev.epicgames.com
3) 움직임 리플리케이션(움직임 동기화)
- 캐릭터 / 물리 ex. Character Movement Component
언리얼 엔진의 무브먼트 컴포넌트
캐릭터부터 무기 발사체까지 레벨에서 무브먼트를 구현하는 무브먼트 컴포넌트를 소개합니다.
dev.epicgames.com
- 앞으로 위의 리스트들에 대해 공부한 내용을 게시글로 정리하여 업로드 예정입니다.
언리얼 네트워크 프로그래밍에서 블루프린트가 아닌 C++ 로 사용해야 하는 이유
1. C++ 에서 필수적으로 사용되는 가상 함수 활용 가능
2. 중요한 타이밍에 쓰이는 리플리케이션 콜백의 호출 가능
3. 리플리케이션 조건의 세밀한 제어 가능
4. 네트워크 전송 최적화 : 가벼운 데이터 설계 가능
출처. 이득우의 언리얼 프로그래밍 - 언리얼 네트웍 멀티플레이어 프레임웍
'게임개발 > ue server' 카테고리의 다른 글
[UE] 언리얼 엔진의 커넥션 구성 (0) | 2024.06.16 |
---|---|
[UE] 네트워크 모드에서의 액터의 준비와 게임 시작 (1) | 2024.06.16 |
[UE] 게임 모드와 플레이어 컨트롤러를 활용한 로그인 플로우의 이해 (0) | 2024.05.08 |
[UE] 어플리케이션의 네트워크 모드 파악하기 (0) | 2024.04.29 |
[UE5] 언리얼 멀티플레이어 네트워킹 (0) | 2024.04.28 |