HUD는 게임 데이터를 소유하지 않고 체력, 탄약, 점수를 표시한다
바인딩은 게임 상태와 UMG 속성을 연결하지만, 실전에서는 C++ 직접 갱신이 더 견고한 경우가 많다.
| 방식 | 쓰는 상황 | 주의할 점 |
|---|---|---|
| Game Data | Character나 Controller가 체력, 탄약, 점수를 갱신한다 | UI가 원본 값을 소유하지 않는다 |
| Property Binding | ProgressBar Percent처럼 단순 표시를 빠르게 연결한다 | 매 프레임 평가 비용과 숨은 의존성이 생긴다 |
| Function Binding | GetText/GetPercent로 임시 검증한다 | 복잡해지면 호출 비용과 책임이 흐려진다 |
| Direct Update | UpdateHealth, UpdateAmmo 같은 함수를 명시적으로 호출한다 | 변경 시점이 분명하고 디버깅이 쉽다 |
HUD는 값을 판단하는 곳이 아니라 플레이어가 계속 봐야 하는 상태를 표시하는 계층이다.