클래스 연결
Widget Blueprint의 parent class가 C++ UUserWidget 파생 클래스인지 확인한다.
부모가 다르면 BindWidget 대상이 없다C++에서 UMG를 다룰 때는 포인터가 보인다고 끝나지 않는다. BindWidget 이름 일치, NativeConstruct 시점, Owning Player, 위젯 재생성, RemoveFromParent 이후 참조 상태까지 확인해야 런타임 null과 중복 바인딩을 막을 수 있다.
Widget Blueprint의 parent class가 C++ UUserWidget 파생 클래스인지 확인한다.
부모가 다르면 BindWidget 대상이 없다Designer의 widget name과 C++ UPROPERTY 이름을 정확히 맞춘다.
Is Variable 체크와 이름 변경 누락을 본다CreateWidget 이후 NativeConstruct에서 자식 위젯 포인터와 이벤트를 바인딩한다.
생성자에서 widget tree를 만지면 이르다Owning Player를 넣어 입력, focus, local player context가 올바르게 잡히게 한다.
split screen이나 multiplayer에서 중요하다RemoveFromParent, Destruct, 재오픈 시 delegate 중복과 stale reference를 정리한다.
한 번 열었다 닫은 UI가 두 번 반응하면 중복 바인딩을 의심한다