게임 개발 공부/네트워크
콜백 함수 - UPROPERTY(ReplicatedUsing)
Vetenir
2025. 4. 10. 20:30
📞 콜백(Callback) 함수란?
콜백 함수란 어떤 이벤트나 상황이 발생했을 때 자동으로 호출되는 함수를 말합니다. 여기선 ReplicatedUsing이 그 상황이고, 그에 대한 콜백 함수가 OnRep_XXX인 거죠.
"서버에서 변수 값이 바뀌어서 클라이언트에 복제되었을 때, 자동으로 어떤 함수를 실행하고 싶다!"
👉 그럴 때 ReplicatedUsing=함수이름을 사용합니다.
UPROPERTY(ReplicatedUsing = 함수이름)
- 언리얼 엔진(UE4/UE5)에서 네트워크 복제(Network Replication) 를 할 때 사용하는 매크로.
공식설명
ReplicatedUsing=FunctionName | ReplicatedUsing 지정자는 네트워크를 통해 프로퍼티를 업데이트할 때 실행되는 콜백 함수를 지정합니다. |
예시
UPROPERTY(ReplicatedUsing=OnRep_CurrentHealth)
float CurrentHealth;
- Replicated 키워드와 ReplicatedUsing = OnRep_CurrentHealth는 이 변수가 서버에서 모든 클라이언트로 복제되도록 지정.
- 값이 변경될 때마다 함수가 클라이언트 측에서 자동으로 호출됩니다.
위 코드는 서버에서 CurrentHealth 값을 바꾸면, 클라이언트로 복제될 때 OnRep_CurrentHealth() 라는 함수(콜백 함수)를 자동으로 호출한다는 뜻입니다.
참고
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/unreal-engine-uproperties