게임 상태 변경
AMyCharacter가 데미지, 발사, 회복으로 체력과 탄약 값을
갱신합니다.
데이터 바인딩과 직접 함수 호출을 비교할 때 핵심은 누가 값을 만들고, 누가 전달하며, 누가 표시만 담당하는지 나누어 보는 것입니다.
AMyCharacter가 데미지, 발사, 회복으로 체력과 탄약 값을
갱신합니다.
OnHealthChanged와 OnAmmoChanged가 HUD
인스턴스 접근 지점을 한곳으로 모읍니다.
UpdateHealth, UpdateAmmo는 ProgressBar와
TextBlock만 바꿉니다.
위젯은 표시 로직만 가지므로 게임 규칙 변경과 UI 수정이 서로 덜 얽힙니다.
체력과 탄약이 바뀐 순간만 HUD에 알려 불필요한 반복 계산을 줄입니다.
호출 스택이 캐릭터에서 컨트롤러, 위젯으로 이어져 추적이 단순합니다.
BindWidget 변수명, 위젯 이름, Is Variable 설정이
모두 맞아야 합니다.
블루프린트 함수가 캐릭터 캐스팅과 포맷팅까지 품으면 UI 쪽 의존성이 커집니다.