728x90
반응형
- 개요
ASC로부터 제공되는 GetGameplayAttributeValueChangeDelegate 델리게이트를 사용하면
인자로 넣은 Attribute가 변경되면 바인드된 콜백 함수를 호출한다
따라서 이를 사용하여 Model의 변경을 Controller를 통해 View에 반영할 수 있다
1) AuraWidgetController 클래스


Model의 변경을 View에 알려주기 위한 BindCallbacksToDependencies 함수를 생성한다
해당 함수는 오버라이드한 버전으로 사용하므로 로직을 비워둔다
2) OverlayWidgetController 클래스

OverlayWidgetController에 BindCallbacksToDependencies 함수를 추가하고 오버라이드한다

구성은 위와 같다
ASC로부터 GetGameplayAttributeValueChangeDelegate 델리게이트를 가져와
Overlay 위젯에서 보여주는 Attribute들을 인자로 넣고, 람다로 작성한 콜백함수를 바인드한다
람다는 각 Attibute의 델리게이트를 Broadcast하는 로직으로 구성하였다
3) AuraHUD 클래스

Overlay 위젯의 Controller 오브젝트를 생성하는 GetOverlayWidgetController 함수에서
Overlay 위젯의 Controller의 BindCallbacksToDependencies 함수를 호출한다
- 최종 실행 결과
728x90
반응형
'언리얼 엔진 - 게임 프로젝트 > GAS 프레임워크 RPG 프로젝트' 카테고리의 다른 글
| GameplayEffect - 2) Instant / Duration / Period GameplayEffect (0) | 2025.07.13 |
|---|---|
| GameplayEffect - 1) GameplayEffect란? (0) | 2025.07.13 |
| RPG 게임 UI - 2) OverlayWidgetController 생성 및 설정 (0) | 2025.07.12 |
| RPG 게임 UI - 1) UI의 설계와 HUD 구성 (0) | 2025.07.07 |
| 간단한 어트리뷰트 설정 - 최종) 어트리뷰트 추가 및 간단한 테스트 (0) | 2025.07.04 |