UMG 계약 C++는 조작 계약, 위젯 블루프린트는 화면 구성 BindWidget은 이름이 맞는 자식 위젯을 연결하는 약속이다. 코드 책임과 화면 책임을 섞지 않는 것이 핵심이다.
가장 흔한 실패 변수 이름 불일치, Is Variable 해제, NativeConstruct 이전 접근.
구역 맡는 일 확인 기준
C++ 클래스UUserWidget 파생 코드 UpdateHealth 같은 외부 입력점과 안전한 조작 함수를 제공한다. BindWidget 포인터는 NativeConstruct 이후 null 체크한다.
Widget Blueprint디자이너가 만지는 화면 ProgressBar, TextBlock, 패널 구조와 이름을 맞춘다. 부모 C++ 클래스 지정, Is Variable 활성화, 이름 일치.
연동 지점바인딩과 호출 노출 자식 위젯을 멤버로 연결하고 화면 쪽 호출 함수를 노출한다. 화면 배치 변경 후 C++ 이름 계약이 유지되는지 본다.
증상 먼저 볼 곳 해결 방향
null 포인터연결된 위젯이 없음 이름, Is Variable, 부모 클래스 위젯 트리 이름을 C++ 멤버명과 정확히 맞춘다.
초기화 오류생성 전 접근 NativeConstruct 호출 이후 여부 외부 시스템 갱신은 위젯 준비 뒤 실행한다.