티스토리 뷰

Constructing the Attribute Menu Widget Controller

기존에 만들었던 Overlay Widget Controller 패턴을 그대로 활용하여 Attribute Menu Widget Controller를 구성할 차례이다.

먼저 Overlay Widget Controller 구조를 다시 확인해보자면 다음과 AuraHUD에 다음과 같은 요소들이 존재한다.

TObjectPtr<UAuraUserWidget> OverlayWidget;
- 실세 생성된 위젯 인스턴스

Overlay Widget Class
- 블루프린트에서 설정하는 클래스

Overlay Widget Controller
- 실제 생성된 컨트롤러

Overlay Widget Controller Class
- 블루프린트에서 지정하는 컨트롤러 클래스

 

그리고 수정사항으로 Overlay Widget Controller는 다른 클래스에서 직접 접근하지 않으므로 기존의 Public에서 Private로 위치를 바꿔주었다.

 

그리고 이제 Overlay Widget Controller 방식 그대로 Attribute Menu Controller를 구성해주자.

컨트롤러 저장 변수, HUD 블루프린트에서 지정할 클래스, Getter 함수를 추가해줄 것이다.

 

Getter 함수 구현부는 기존의 Overlay Widget Controller 함수와 동일하다.

 

그리고 blueprint Function Libaray에도 Getter를 추가하자.

이를 통해 Attribute Menu Widget은 HUD를 직접 탐색하거나 캐스팅하는 과정 없이, 함수 호출만으로 자신의 Widget Controller를 가져올 수 있다.

 

여기서도 저번에 만들었던 Overlay Widget Controller의 Getter 함수와 구조는 동일하다.

 

추가적으로, 블루프린트에서 함수로 호출하기 위해서는 클래스 선언을 수정해주어야 한다.

 

이제 컴파일 해서 AttributeMenuWidgetController에 대한 블루프린트를 만들고, 이를 HUD에 연결해주자.

 

다시 Attribute Menu Widget으로 돌아가면 이제 Attribute Menu Widget Controller를 직접 호출할 수 있다.

이를 통해 Sew Widget Controller 함수를 호출하여 컨트롤러를 세팅해주자.

 

제대로 설정됐는 지 검증을 위해, Controller 세팅시 함수 호출을 통해 간단한 문자열을 출력해보았다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함