inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[입문자를 위한 UE5] Part4. 언리얼 엔진 C++

Variable Replication

Variable Replication

120

작성자 없음

작성한 질문수 0

0

서버에서 OnRep_Counter()를 따로 호출해줘야 하는 이유는

ReplicatedUsing을 사용하는데

DOREPLIFETIME_CONDITION_NOTIFY()을 사용하지 않고 DOREPLIFETIME을 사용했기 떄문 아닌가요?

 

ReplicatedUsing은 DOREPLIFETIME_CONDITION_NOTIFY() 이랑 같이 사용해야하는 것으로 알고 있습니다.

unreal-engine 언리얼-c++

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. ab님,

Unreal Engine에서 변수를 다른 클라이언트에 복제(Replication)할 때, ReplicatedUsing 속성을 사용할 경우 해당 변수의 변경을 감지하여 특정 함수(OnRep_)를 호출하게 됩니다. DOREPLIFETIME_CONDITION_NOTIFYDOREPLIFETIME 매크로의 차이를 이해하는 것은 중요한 부분입니다.

  • DOREPLIFETIME: 기본적으로 변수 복제를 설정합니다. 이 매크로는 서버에서 해당 변수가 변경될 때 클라이언트에 자동으로 복제됩니다. 하지만 특정 조건에서 호출되는 함수에 대해 명시적으로 지정되지 않습니다.

  • DOREPLIFETIME_CONDITION_NOTIFY: 이 매크로를 사용하면, 복제 조건과 함께 해당 변수가 복제될 때 호출되는 함수를 명확하게 지정할 수 있습니다. 이로 인해 변수의 변동 시에 클라이언트에서 미리 준비된 함수(OnRep_)가 자동으로 호출됩니다.

질문에서 언급하신 대로 ReplicatedUsing 속성을 사용한다면, 변수 변동에 따른 자동 호출을 위해 DOREPLIFETIME_CONDITION_NOTIFY를 사용하는 것이 정확한 방법입니다. DOREPLIFETIME을 사용할 경우, 수동으로 해당 함수를 클라이언트 측에 호출해줘야 할 수 있습니다.

아래 유사한 질문에 대한 링크를 참고하시면 더욱 도움이 될 수 있습니다:
- Unreal Engine에서의 변수 복제와 함수 호출 관련 질문

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

1장. 파일 추가 및 삭제 에서 생성할때 에러가 납니다.

0

68

0

3d game 리소스 추출하는 방법

0

152

1

11강 2분 22초. 12강 6분 18초 영상편집오류

0

66

1

GENERATED_BODY() 빨간 밑줄이 사라지지 않습니다

0

118

2

언리얼 프로젝트를 생성할 수 없었습니다(컴파일 실패)

0

303

2

Unreal VS 빌드오류 해결 도저히 못하겠습니다.

0

703

2

WidgetBlueprint 복사 방법 질문

0

64

2

수강생으로서의 고민

0

99

1

13강. 모듈 내 하위 디렉터리 인식 못하는 문제 해결법

0

64

1

UClass 안에 ClassDefaultObject 관련 질문이 있습니다.

0

84

1

해당 강의 중반부부터 싱크가 안맞는 것 같아요

0

73

1

디아블로 방식의 컨트롤에서 타겟 위치로 이동 문제

0

120

2

디아블로 방식의 컨트롤 맨마지막 옵션관련 질문

0

82

2

32. 디아블로 방식의 컨트롤

0

74

1

점프 강의 도중의 질문입니다.

1

103

2

AssetManager 질문

0

93

1

GetAssetByName<UR1InputData>("InputData")) 질문입니다.

0

123

2

AI #4 질문

0

111

1

언리얼 시스템의 에러? 에 대해서 질문 드립니다.

0

356

1

전혀 이해가 가질 않네요.

9

403

1

의구심이 듭니다

0

355

1

Animation Event영상에서 Notify 대신 Received_Notify()사용

0

121

0

const FObjectInitializer& ObjectInitializer 와 const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get()

0

311

1

visual studio와 vscode

0

365

1