inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Lập trình phi thực tế của Lee Deuk-Woo Phần 3 - Tìm hiểu về Khung đa trò chơi trên mạng

Bài 5: Cơ bản về Actor Replication

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

Đã giải quyết

86

themoon007

98 câu hỏi đã được viết

0

어떤 액터의 현재 로컬 역할이 authority이든, Simulated 클라이언트든, Autonomous 클라이언트든 똑같이 beginPlay()와 Tick() 같은 건 일단 실행이 되는 건가요??

 

simulated 클라 역할인 액터는 개념적으론 로직이 수행되선 안되는데

그럼에도 beginplay(), Tick() 같은건 일단 실행이 되기때문에 if문으로 구분을 해야하는거죠?

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

Câu trả lời 2

1

ideugu

네 만약에 클라이언트가 서버의 데이터를 받아야만 움직여야 한다면 전송받을 데이터 양이 엄청나서 항상 랙이 걸리지 않을까 생각합니다. 결국에는 딱 필요한 최소 양으로 독립적으로 돌아가는 두 개의 어플리케이션을 어떻게 동기화되도록 설계하느냐가 핵심이겠지요.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. themoon007님께서 주신 질문에 대해 답변 드리겠습니다.

언리얼 엔진에서 BeginPlay()Tick() 함수는 모든 액터에 대해 항상 실행이 됩니다. 이는 액터가 네트워크 상에서 어떤 역할(Authority, Autonomous, Simulated)을 가지고 있든지 상관 없이 동일합니다.

Simulated 클라이언트 역할을 가진 액터의 경우, 로직이 수행되어서는 안되는 상황이 많습니다. 따라서 이를 구분하기 위해 if 문이나 네트워크 상태를 체크하는 방법으로 코드 내에서 분명히 구분해주는 것이 중요합니다. 예를 들어, HasAuthority() 함수를 사용하여 현재 액터가 네트워크의 Authority 역할을 가지고 있는지 확인할 수 있으며, 이를 통해서 로직 수행 여부를 구분할 수 있습니다.

관련하여 더 자세히 알아볼 수 있는 선배님의 답변이나 유사한 게시물을 참고하면 좋을 것 같습니다:

이와 같은 특징을 이해함으로써 네트워크 프로그래밍에서 중요하고 효율적인 코드를 작성할 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

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

0

21

1

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

0

73

2

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

0

96

2

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

-1

70

2

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

1

73

2

CompressedFlag 질문

0

55

2

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

0

105

3

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

0

93

2

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

0

100

2

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

0

116

2

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

0

112

3

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

0

162

3

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

0

125

2

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

0

143

1

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

0

187

1

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

0

141

2

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

0

158

2

7강에서 DORM_Initial 안됨

0

126

3

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

0

128

2

캐릭터 클래스의 mesh 관련

0

129

2

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

0

127

3

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

0

197

3

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

0

220

2

3분 39초 경에 질문이 있습니다

0

73

2