개요
- 프로퍼티의 메타데이터 지정자 중에 GetOptions 항목에 대해 알아 보자.
- GetOptions: FName이나 FString 속성에 대해 에디터 환경에서 텍스트 상자대신 드롭다운을 생성하는 기능
- 드롭다운의 내용은 함수의 결과값으로 채워진다.
- 함수는 에디터에서 블루프린트를 열 때 한번 호출되고, 사용자가 드롭다운을 클릭할 때마다 호출 된다.
사용 방법
GetOptions 지정자 다음에 함수명을 지정한다. 함수는 FName 또는 Fstring의 배열값을 반환해야 한다.
UPROPERTY(EditAnywhere, meta = (GetOptions="GetElementalOptions"))
FString Elemental;
UFUNCTION()
TArray<FString> GetElementalOptions()
{
return { TEXT("Fire"), TEXT("Ice"), TEXT("Earth"), TEXT("Air") };
}
UPROPERTY(EditAnywhere, meta = (GetOptions = "GetSocketNames"))
TArray<FName> AttachSockets;
UFUNCTION()
TArray<FString> GetSocketNames()
{
TArray<FString> SocketNames;
//중략 : 스켈레탈 메시에 있는 소켓 목록
return SocketNames;
}
요약
enum 타입을 사용하지 않고도 string을 목록화 하여 에디터에서 사용하고자 할 때는 GetOptions 지정자를 이용하자
반응형