お世話になっております。
ソフト参照でウィジェットをロードし、普通のウィジェットと同じくAdd to Viewport等で利用しようとしています。Async Load AssetからアウトプットされたObjectをCastしたいのですが、Castが失敗してしまい、Nullとなってしまいます。こちらの理由と解決策について、ご教授頂けますでしょうか?
お世話になっております。
ソフト参照でウィジェットをロードし、普通のウィジェットと同じくAdd to Viewport等で利用しようとしています。Async Load AssetからアウトプットされたObjectをCastしたいのですが、Castが失敗してしまい、Nullとなってしまいます。こちらの理由と解決策について、ご教授頂けますでしょうか?
Loadした結果取得されるのが Widget
ではなく WidgetBlueprint
であるからです
AsyncLoadAsset
で返ってくるObjectは、Assetそのもの を指しています
Widgetとして初期化されたものではなく、その前段階のものなので、当然WidgetにCast出来ません
正しいやり方は、AsyncLoadAssetの終了後にきちんと CreateWidget
することです
Actorなら SpawnActorFromClass
でSpawnしてください
ご回答いただき、ありがとうございます。
Widgetとして初期化されたものではなく、その前段階のものなので、当然WidgetにCast出来ません
なるほど、つまり画像のような形になるということでしょうか?
こちらの場合、ウィジェットやアクターに関しては作成方法がわかったのですが、データテーブルやデータアセットの場合、「create widget」や[spawn actor from class」に当たる部分はどのようにオブジェクトを作成したらよいでしょうか?
DataTableなどのAssetは最初のとおりAssetとしての型にCastすればよいです
なるほど、そのままで良いのですね。
理解できました!
ありがとうございます!