▣ TSubclassOf
Unreal Engine에서 특정 클래스를 상속받는 클래스 타입을 저장하는 데 사용되는 템플릿입니다.
제한: TSubclassOf는 지정된 기반 클래스를 상속받는 클래스만 할당 가능하도록 제한합니다.
UUserWidget
Unreal Engine에서 UI를 제작할 때 사용하는 기반 클래스입니다.
UUserWidget은 UMG 위젯의 기능을 제공하며, 모든 UI 블루프린트 클래스는 이 클래스를 상속받습니다.
이 코드에서는 HUD(Head-Up Display) UI를 표시하기 위해 사용됩니다.
nullptr 초기화
TSubclassOf는 클래스의 타입 정보를 저장하는 변수이므로 초기화하지 않으면 쓰레기 값이 들어갈 수 있습니다.
= nullptr로 초기화하면 초기 상태를 명확히 하고, 불필요한 참조나 예외를 방지할 수 있습니다.
▣ LoadClass 함수
LoadClass는 런타임 시 특정 클래스를 메모리에 로드하기 위해 사용됩니다.
경로(TEXT("/Game/UMG/WB_HUD.WB_HUD_C"))를 통해 UMG 위젯 블루프린트(WB_HUD_C)를 찾고 메모리에 로드합니다.
이 함수는 C++ 클래스뿐만 아니라 블루프린트로 생성된 클래스(.uasset)를 로드할 때 유용합니다.
코드 목적:
이 코드는 HUDClass에 대한 초기화를 한 번만 수행하여 리소스 낭비를 방지하고, 런타임에서 동적으로 UMG 위젯을 로드할 수 있도록 합니다.
장점:
동적 로드: 특정 클래스가 런타임에만 필요할 경우 초기 메모리 사용량을 절약할 수 있습니다.
유연성: 위젯 클래스의 경로를 변경해 다른 위젯으로 교체가 용이합니다.
안전성: nullptr 확인으로 중복 로드 방지.
'[ Unreal5 ] > - 언리얼엔진5 실습' 카테고리의 다른 글
언리얼엔진5 c++ Input Hold (0) | 2024.11.26 |
---|---|
언리얼엔진5 c++ Sphere Trace (0) | 2024.11.25 |
언리얼엔진5 c++ GEngine->AddOnScreenDebugMessage (0) | 2024.11.23 |
언리얼엔진5 c++ Widget Image 투명도 설정 (0) | 2024.11.22 |
언리얼엔진5 c++ PauseGame, EnablePlayerControl (0) | 2024.11.21 |
댓글