inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해

3강 커넥션과 오너십

PostNetInit 관련 질문

해결된 질문

377

차태관

작성한 질문수 11

0

안녕하세요, PostNetInint 관련 질문이 있습니다.

 

LogABNetwork: [SERVER] AABGameMode::PreLogin ============================================================
LogABNetwork: [SERVER] AABGameMode::PreLogin Begin
LogABNetwork: [SERVER] AABGameMode::PreLogin End
LogABNetwork: [SERVER] AABGameMode::Login Begin
LogABNetwork: [SERVER] AABPlayerController::BeginPlay Begin BP_ABPlayerController_C_1
LogABNetwork: [SERVER] AABPlayerController::BeginPlay End
LogABNetwork: [SERVER] AABGameMode::Login End
LogABNetwork: [SERVER] AABGameMode::PostLogin Begin
LogABNetwork: [SERVER] AABCharacterPlayer::BeginPlay Begin ABCharacterPlayer_1
LogABNetwork: [SERVER] AABCharacterPlayer::BeginPlay End ABCharacterPlayer_1
LogABNetwork: [SERVER] AABPlayerController::OnPossess Begin BP_ABPlayerController_C_1
LogABNetwork: [SERVER] AABCharacterPlayer::PossessedBy Begin ABCharacterPlayer_1
LogABNetwork: [SERVER] AABCharacterPlayer::PossessedBy No Owner
LogABNetwork: [SERVER] AABCharacterPlayer::PossessedBy Owner : BP_ABPlayerController_C_1
LogABNetwork: [SERVER] AABCharacterPlayer::PossessedBy End ABCharacterPlayer_1
LogABNetwork: [SERVER] AABPlayerController::OnPossess End
LogABNetwork: [SERVER] AABGameMode::PostLogin Client Connections : IpConnection_1
LogABNetwork: [SERVER] AABGameMode::PostLogin End
LogABNetwork: [CLIENT1] AABPlayerController::PostNetInit Begin BP_ABPlayerController_C_0
LogABNetwork: [CLIENT1] AABPlayerController::PostNetInit Server Connection : IpConnection_0
LogABNetwork: [CLIENT1] AABPlayerController::PostNetInit End
LogABNetwork: [CLIENT1] AABCharacterPlayer::OnRep_Owner Begin ABCharacterPlayer_0
LogABNetwork: [CLIENT1] AABCharacterPlayer::OnRep_Owner End ABCharacterPlayer_0
LogABNetwork: [CLIENT1] AABCharacterPlayer::PostNetInit Begin ABCharacterPlayer_0
LogABNetwork: [CLIENT1] AABCharacterPlayer::PostNetInit End
LogABNetwork: [CLIENT1] AABCharacterPlayer::PostNetInit Begin ABCharacterPlayer_1
LogABNetwork: [CLIENT1] AABCharacterPlayer::PostNetInit End
LogABNetwork: [CLIENT1] AABGameState::OnRep_ReplicatedHasBegunPlay Begin No Owner
LogABNetwork: [CLIENT1] AABPlayerController::BeginPlay Begin BP_ABPlayerController_C_0
LogABNetwork: [CLIENT1] AABPlayerController::BeginPlay End
LogABNetwork: [CLIENT1] AABCharacterPlayer::BeginPlay Begin ABCharacterPlayer_0
LogABNetwork: [CLIENT1] AABCharacterPlayer::BeginPlay End ABCharacterPlayer_0
LogABNetwork: [CLIENT1] AABCharacterPlayer::BeginPlay Begin ABCharacterPlayer_1
LogABNetwork: [CLIENT1] AABCharacterPlayer::BeginPlay End ABCharacterPlayer_1
LogABNetwork: [CLIENT1] AABGameState::OnRep_ReplicatedHasBegunPlay End

 

강의 말미의 로그를 보면 [CLIENT1] 의
AABPlayerController::PostNetInit 함수가 함수가 끝나고 나서
OnRep_Owner 함수가 실행됩니다.
그리고 나서 AABCharacterPlayer의 PostNetInit 함수가 시작 되는데, Actor 를 상속받은 모든 하위 클래스에서 PostNetInit 을 호출 하는 것으로 알고 있습니다.

 

이때 순서가 컨트롤러의 PostNetInit 이 호출되고 종료된 다음, 그 다음으로 캐릭터의 PostNetInit이 호출되고 종료되는데,
캐릭터와 컨트롤러 둘다 액터를 상속 받았는데 순서가 무조건 먼저 컨트롤러 호출 및 완료 후에 캐릭터 호출 및 완료 인지 궁금합니다. Gamemode->Controller-> Pawn 이순서가 무조건 맞나요?

unreal-engine 네트워크 언리얼-c++

답변 1

2

이득우

네 액터라는 것은 언리얼 엔진이 콘텐츠를 구성할 때 기준으로 삼는 기본 단위입니다. 따라서 한 씬은 여러 액터로 구성되어 있는데, 이 액터는 자신의 역할에 따라 중요도가 다릅니다. 특히 네트웍 프로그래밍에서는 이 부분을 파악하는 것이 중요합니다.
게임 모드는 서버에만 존재하는 액터입니다.
플레이어 컨트롤러는 서버와 클라이언트 모두에 존재하며, 서버와의 접속을 담당하는 창구 역할을 합니다. 따라서 클라이언트 입장에서 가장 중요한 액터라고 할 수 있습니다.
그 다음으로 중요한 액터는 실제 클라이언트 컴퓨터에서 클라이언트 플레이어가 조종하는 폰이 되겠지요.

5.6버전 Networking Insights 실행안됨 문제에 관하여

0

30

1

8강 중간, 분수대의 SetOwner 에 대해 궁금합니다.

0

77

2

플레이어(Actor) 로 (리슨)서버에서 생성 되나요?

0

101

2

2강) HandleBeginPlay 의 역활이 궁금합니다.

-1

72

2

3강 중간, 모드 로그로 찍을 시 스탠드얼론이 안찍힙니다.

1

76

2

CompressedFlag 질문

0

58

2

10강까지 머리 위 체력바가 표시가 안됩니다.

0

111

3

10강까지 머리 위 체력바가 표시가 안됩니다.

0

95

2

16:44 부분에서 질문이 있습니다.

0

104

2

12:50 NetMulticast RPC 커넥션 관려하여 질문이 있습니다.

0

122

2

github 3-5 파트 프로젝트에서 컴파일 에러가 발생합니다.

0

116

3

언리얼 인사이트 5.6버전 networking insights 가 뜨지 않습니다.

0

164

3

Insight 사용이 안되어서 문의 드립니다!

0

131

2

하위 레벨...?? High Level 말씀하신거죠..??

0

147

1

CompressedFlags를 이용한 InputThrottle, InputSteering 전달 방법 질문

0

193

1

조건식 프로퍼티 리플리케이션 질문

0

145

2

ArenaBattle에 Log추가하는 곳에 에러가 나타나 질문 드립니다.

0

161

2

7강에서 DORM_Initial 안됨

0

128

3

안녕하세요 강의 내용 정리에 관련해서 질문있어요

0

131

2

캐릭터 클래스의 mesh 관련

0

133

2

3파트 6강 분수대 로테이트에 문제가 생겼습니다.

0

131

3

클라이언트의 오너십 설정에 대해서 궁금합니다.

0

202

3

프로퍼티 리플리케이트 동기화 보장 개념.

0

225

2

결국엔 액터 기본함수들은 어디든 똑같이 일단 실행되는건가요?

0

94

2