이득우의 언리얼 C++ 게임 개발의 정석
게임 모드
게임의 규칙을 정하고 게임의 틀을 잡아주는 역할을 한다.
멀티 플레이 게임에서 방장 역할을 하며, 게임에서 중요한 데이터를 인증하는 권한을 가진다.
C++ 게임 모드로 설정하면 World Settings에서 기본 값들을 수정할 수 없게 된다.
플레이가 시작되면 게임 모드에 의해 다음과 같은 순서로 설정이 갖춰진다.
- 플레이어 컨트롤러 생성
- 플레이어 폰 생성
- 플레이어 컨트롤러가 폰에 빙의
- 게임 시작
게임 모드, 플레이어 컨트롤러, 폰의 이벤트 함수를 오버라이딩하여 로그를 찍어 확인해본다.
게임 모드의 PostLogin 함수를 오버라이딩한다.
- 플레이어가 게임에 입장하는 것은 Login이라고 한다.
- PostLogin에서는 폰을 생성하고 컨트롤러가 폰에 빙의하는 작업이 수행된다.
- PostLogin 함수의 종료는 게임에 입장한 플레이어의 세팅이 완료되었다는 의미이다.
컨트롤러가 폰에 빙의할 때 OnPossess 이벤트 함수를 호출한다.
폰이 컨트롤러에 의해 빙의될 때 PossessedBy 함수가 호출된다.
다음과 같은 순서로 진행됨을 확인했다.
- 플레이어 컨트롤러 생성
- PostLogin 호출
- 폰 생성
- 플레이어 컨트롤러가 폰에 빙의
- 폰이 컨트롤러에 의해 빙의됨
- PostLogin 종료
게임 모드는 다음과 같이 가져와야함에 주의한다.
- 게임에서 중요한 데이터를 인증하는 권한을 가진다는 의미이다.
[X] UWorld::GetGameMode()
[O] UWorld::GetAuthGameMode()
'Unreal Engine > 이득우의 언리얼 C++ 게임 개발의 정석' 카테고리의 다른 글
인간형 폰 제작에 고려할 요소 (0) | 2023.03.02 |
---|---|
폰과 플레이어 컨트롤러 (0) | 2023.03.02 |
C++ 클래스를 삭제하는 방법 (0) | 2023.03.02 |
액터 컴포넌트와 씬 컴포넌트 (0) | 2023.03.02 |
Movement 컴포넌트의 종류 (0) | 2023.03.02 |