HUD Binding

HUD는 값을 계산하기보다 게임 상태를 정확히 표시합니다

데이터 바인딩은 편하지만 매 프레임 평가 비용이 생길 수 있어, 값이 바뀌는 순간에 UI를 갱신하는 구조를 우선합니다.

갱신 기준

체력, 탄약, 점수는 Character, PlayerState, GameState 같은 소스에서 바뀌고 HUD는 이벤트나 OnRep 알림을 받아 표시만 바꿉니다.

Data Source

소유 플레이어의 Character와 PlayerState 중 값의 수명과 복제 범위에 맞는 출처를 고릅니다.

Event Dispatch

값 변경 함수에서 Delegate를 호출해 UI가 Tick으로 계속 물어보지 않게 합니다.

OnRep

멀티플레이 값은 ReplicatedUsing 알림에서 클라이언트 HUD 갱신을 연결합니다.

Widget Cache

TextBlock, ProgressBar 참조는 BindWidget으로 잡고 매번 FindWidget하지 않습니다.