up:: UE5.0.2
source:: Asset Management | Unreal Engine ドキュメント
source:: UE4 アセットマネージメントフレームワークについて - Let’s Enjoy Unreal Engine
アセット(コンテンツブラウザ内のオブジェクト)のロード・アンロードを制御する最適化用機能。
まず、アセットマネージャーという機能があり、そこではアセットはPrimary AssetsとSecondary Assetsの二種類に分けられる。
Primaryはアセットマネージャーから直接操作できるアセット。Primary Assets IDを指定することで直接読める。Secondaryは操作できないアセット。Primaryに紐づいているアセット。Primaryが参照を持っているなら、その対象はSecondaryになる。
アセットマネージャーはアセット管理のためのシングルトンクラス。
ストリームマネージャーという非同期読み込みの仕組みがラップされている。
Primaryにはアセットバンドルという、特定アセットの名前付きリストが関連付けられる。
特定アセットとはSecondaryなどのこと。C++でのみ直作成可能。
デフォルトではUWorldだけがPrimary。SecondaryをPrimaryにするにはGetPrimaryAssetIdをオーバーライドしてFPrimaryAssetsId構造体を返せばいい。
PrimaryAssetIdはアセットタイプと名前で構成される。
Primary Assetにアクセスするなら、名前にClassを含む関数を使用する。
インスタンス化が必要ないなら、UPrimaryDataAssetを継承することでデータ専用ブループリントを作成できる。
で、実際に使うには。
Project Settings→Asset Managerから登録するか、Primary Data Assetをコンテンツブラウザーから作成してアセットを登録するか。