네트웍 멀티플레이어에서 원격 액터의 초기화 과정을 이해하는 시간입니다.
아래의 세 함수들은 액터의 준비 및 게임의 시작을 담당하는 함수입니다.
1. 액터의 준비
- 액터의 초기화를 담당하는 함수들입니다.
// 서버와 무관
AGameStateBase::PostInitializeComponents()
- 플레이어 컨트롤러가 초기화(생성)되면서, 네트워크와 무관한 (게임과 무관한) 액터 설정의 초기화는 PostInitializeComponents 에서 담당합니다.
- 게임을 시작하기 전, 서버 변경 정보를 전달받아 네트워크로 전달합니다.
// 원격 클라이언트에서 호출됨
// 서버에서 값을 전달받아 원격 클라이언트의 Actor 세팅이 모두 마무리될 때 호출된다
AActor::PostNetInit()
- 원격 클라이언트에서 호출되어 서버에서 변경된 다양한 값들을 각 클라이언트에 세팅하는 초기화 단계입니다.
- 클라이언트 내 액터 세팅이 모두 마무리 될 때 호출합니다.
- 서버가 아닌 원격 클라이언트에서만 호출됩니다. (서버 접속했을 시, 호출되지 않는 함수입니다)
여기까지 액터의 초기화가 모두 완료되면, 각 클라이언트의 게임이 시작됩니다.
2. 게임의 시작(StartPlay 함수 시작)
AActor::BeginPlay()
- 쿼터뷰라던가, 게임 진행에 필요한 초기화는 BeginPlay 에서 진행됩니다.
'게임개발 > ue server' 카테고리의 다른 글
[UE] 언리얼 엔진의 커넥션 구성 (0) | 2024.06.16 |
---|---|
[UE] 게임 모드와 플레이어 컨트롤러를 활용한 로그인 플로우의 이해 (0) | 2024.05.08 |
[UE] 어플리케이션의 네트워크 모드 파악하기 (0) | 2024.04.29 |
[UE] 언리얼 엔진의 멀티플레이어 게임 프레임워크 특징과 네트워크 프로그래밍에서 BP가 아닌 C++을 사용해야 하는 이유 (0) | 2024.04.28 |
[UE5] 언리얼 멀티플레이어 네트워킹 (0) | 2024.04.28 |