[UE5] レベルインスタンス内に配置されているアクターの取得について
はじめに
こちらでは UE5 から導入されたレベルインスタンスで
レベルインスタンス内に配置されているアクターの取得方法について記載します。
環境は UE5.3 です。
他によいやり方があればぜひぜひ教えて下さい!
コード
TArray<AActor*> UHoge::GetLevelInstanceActors(
ALevelInstance* LevelInstance,
TSubclassOf<AActor> ActorClass)
{
auto WorldAsset = LevelInstance->GetWorldAsset();
TArray<AActor*> Actors;
if (auto Object = WorldAsset.ToSoftObjectPath().TryLoad())
{
auto World = Cast<UWorld>(Object);
auto Level = World->GetLevel(0);
UGameplayStatics::GetAllActorsOfClass(Level, ActorClass, Actors);
}
return Actors;
}
もしサポート頂けたら いつか個人開発をする時に使わせて頂きます!