UnrealC++에서 클래스의 기본 객체 얻기
5184 단어 위 4UnrealEngine4UnrealC++
소개
Blueprint는 클래스의 기본값을 가져옵니다.
이번에는 이것을 UnrealC++로 하는 방법을 소개하고 싶습니다.
무엇을 할 수 있는가?
UnrealC++로 디폴트 오브젝트를 취득하면 구체적으로 어떤 일을 할 수 있는가입니다만, 이하와 같습니다.
UnrealC++로 디폴트 오브젝트를 취득하면 구체적으로 어떤 일을 할 수 있는가입니다만, 이하와 같습니다.
GetClassDefaults
노드와 마찬가지로 클래스의 기본값을 얻을 수 있습니다.구체적인 사용예로서는 RichText의 RichTextBlockImageDecorator 와 같은 클래스의 디폴트치를 사용하는 목적의 클래스를 취급할 때에 편리합니다.
소스 코드
Actor 클래스의 HiddenInGame의 디폴트치를 취득
Sample.cppbool SampleFunction(const TSubclassOf<AActor>& InClass)
{
UClass* Class = InClass.Get();
if (Class)
{
AActor* DefaultObject = Cast<AActor>(Class->GetDefaultObject());
if (DefaultObject)
{
return DefaultObject->bHidden;
}
}
return false;
}
RichTextBlockImageDecorator 클래스에서 Brush를 가져옵니다.
Sample.cppbool URichTextFunctionLibrary::GetBrushFromImageDecoratorClass(const TSubclassOf<URichTextBlockImageDecorator>& InClass, FName TableID, FSlateBrush& Brush)
{
UClass* Class = InClass.Get();
if (Class)
{
URichTextBlockImageDecorator* DefaultObject = Cast<URichTextBlockImageDecorator>(Class->GetDefaultObject());
if (DefaultObject)
{
const FSlateBrush* BrushPtr = DefaultObject->FindImageBrush(TableID, false);
if (BrushPtr)
{
Brush = *BrushPtr;
return true;
}
}
}
return false;
}
결론
좀처럼 사소한 케이스일지도 모르지만, 이쪽의 기사가 도움이 되면 다행입니다.
bool SampleFunction(const TSubclassOf<AActor>& InClass)
{
UClass* Class = InClass.Get();
if (Class)
{
AActor* DefaultObject = Cast<AActor>(Class->GetDefaultObject());
if (DefaultObject)
{
return DefaultObject->bHidden;
}
}
return false;
}
bool URichTextFunctionLibrary::GetBrushFromImageDecoratorClass(const TSubclassOf<URichTextBlockImageDecorator>& InClass, FName TableID, FSlateBrush& Brush)
{
UClass* Class = InClass.Get();
if (Class)
{
URichTextBlockImageDecorator* DefaultObject = Cast<URichTextBlockImageDecorator>(Class->GetDefaultObject());
if (DefaultObject)
{
const FSlateBrush* BrushPtr = DefaultObject->FindImageBrush(TableID, false);
if (BrushPtr)
{
Brush = *BrushPtr;
return true;
}
}
}
return false;
}
좀처럼 사소한 케이스일지도 모르지만, 이쪽의 기사가 도움이 되면 다행입니다.
Reference
이 문제에 관하여(UnrealC++에서 클래스의 기본 객체 얻기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Naotsun/items/c155be09cd0531abf12b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)