[UE Net] 언리얼 네트웍 멀티플레이어 프레임웍 UE Network Framework
- 클라이언트-서버 모델의 구성 이해
- 언리얼 엔진의 네트웍 멀티프레이어 프레임웍
- 언리얼 C++ 프로그래밍이 가지는 장점의 이해
인프런 이득우님의 '언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해' 강의를 참고하였습니다.
😎 [이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해] 강의 들으러 가기!
목차
프로젝트 세팅
프로젝트 세팅하기
Add another Client 버튼 보이게 하기
Editor Preferences - PIE
- Allow late joining 체크
Editor Preferences - Play - Play in New Window
- Always On Top 체크
언리얼 네트웍 멀티플레이어 프레임웍
언리얼 네트웍 멀티플레이어 프레임웍의 구성 요소
Remote Procedure Call (RPC)
- 네트워크를 활용해서 즉각적으로 서버와 클라이언트 간 명령을 주고받아야 되는 경우에 사용한다.
- 대표적인 예시로 Movement Replication이 있다.
- Movement Replication의 예시로는 Character Replcation, Physics Replication이 있다.
프로퍼트 리플리케이 Property Relplication
- 액터가 가지고 있는 속성을 동기화
- RPC 보다 반응속도는 느리지만, 게임을 구성하는 주요한 속성을 확실하게 변화된 속성을 전달받고 싶을 때 사용한다.
- 게임에서 중요한 부분을 담당하기 때문에 가급적이면 이 정보들을 최적화해서 전달하는 것이 중요하다.
언리얼 공식문서 - 언리얼 엔진의 네트워킹
네트워크 게임에서는 이러한 상호작용이 서버에 존재하는 월드, 플레이어 1의 클라이언트에 존재하는 월드, 플레이어 2의 클라이언트에 존재하는 월드, 그리고 세션에 참여하는 각 클라이언트의 추가 월드 등, 여러 개의 서로 다른 월드에서 벌어집니다.
게임이 실제 플레이되는 곳은 서버이지만, 클라이언트의 월드에서 똑같은 이벤트가 발생하는 것처럼 보이게 해야 합니다. 따라서, 각 클라이언트에 선별적으로 정보를 전송하여 서버에 있는 월드의 시각적 표현을 생성해야 합니다.
싱글플레이어 게임의 구성 vs. 멀티플레이어 게임의 구성 (Client-Server 모델)
싱글플레이어 게임의 구성 vs. 멀티플레이어 게임의 구성 (Client-Server 모델)
멀티플레이어 게임의 구성 (Client-Server 모델)
클라이언트는 독립적인 게임 인스턴스를 가진다.
클라이언트는 자기 클라이언트가 있는 컴퓨터 내에서 실행하는 환경만 제공한다고 볼 수 있다. 이 안에 담긴 내용은 서버로부터 복제된 허상 콘텐츠(=Proxy)다.
C++ 프로그래밍으로 네트워킹을 구현해야 하는 이유?
C++ 프로그래밍으로 가능한 기능
- 필수적으로 사용되는 가상 함수의 활용 가능
- 제대로 된 리플리케이션 콜백의 호출 가능
- 리플리케이션 조건의 세밀한 제어 가능
- 네트워크 전송 최적화: 가벼운 데이터 설계
네트워크 프로그래밍 시 리플리케이션 콜백을 적절히 호출하여 네트워크 상에서 정보를 동기화한다.
C++ 프로그래밍에서는 다양하게 콜백함수를 받을 수 있어 BP보다 더 세밀히 조절할 수 있다.
또한 C++이 데이터 경량화에 유리하다.
'⭐ Unreal Engine > UE 개념정리 - Network' 카테고리의 다른 글
[UE Net] 액터 리플리케이션 Actor Replication (1) | 2024.02.10 |
---|---|
[UE Net] Connection Handshaking (0) | 2024.02.09 |
[UE Net] 액터의 역할과 커넥션 핸드셰이킹 Actor Role & Connection Handshaking (0) | 2024.02.09 |
[UE Net] 커넥션과 오너십 Connection & Ownership (0) | 2024.02.09 |
[UE Net] 게임 모드와 로그인 Game Mode & Log In (0) | 2024.02.09 |
댓글
이 글 공유하기
다른 글
-
[UE Net] Connection Handshaking
[UE Net] Connection Handshaking
2024.02.09 -
[UE Net] 액터의 역할과 커넥션 핸드셰이킹 Actor Role & Connection Handshaking
[UE Net] 액터의 역할과 커넥션 핸드셰이킹 Actor Role & Connection Handshaking
2024.02.09 -
[UE Net] 커넥션과 오너십 Connection & Ownership
[UE Net] 커넥션과 오너십 Connection & Ownership
2024.02.09 -
[UE Net] 게임 모드와 로그인 Game Mode & Log In
[UE Net] 게임 모드와 로그인 Game Mode & Log In
2024.02.09