UE4では最終的にパッケージ化した際、ひとつにパックファイルに全てのアセットがまとめられます。正確にはパックしないことも可能ですが、原則としてゲームを配布する際にはパッケージ化しておくことが求められています。
そしてパッケージファイルの中には実際にはゲーム中には使用されていないアセットも含まれてしまいます。こうなるとそのアセットは含まれているだけで無駄なものとなってしまいます。
こういった場合の対策として役立つ方法がありますので、紹介します。
ちなみにこの機能がどのバージョンから入ったかは把握していませんが、UE4.5から使用可能です。
コンテンツブラウザー内にあるアセットフィルター
コンテンツブラウザーにはとても便利な機能として、アセットフィルターというものがあります。アセットフィルターはアセットごとに特定の条件を追加してフォルダー内をフィルタリングしてくれる機能です。
例えば、Gameフォルダー以下にある全てのテクスチャーの絞りこみ。
条件としてテクスチャーにチェック。
するとテクスチャーのアセットだけが表示されます。
フィルターには他のアセットを追加して選択することもできます。
これだけでも相当便利です。
レベルで使用中のものだけをフィルタリング
フィルターの中にはその他のフィルターという項目があり、この中には"レベルで使用中"というフィルターがあります。
これを使用すると…
全ての種類のアセットの中から現在動いているレベル内で使用されているアセットを自動的にフィルタリングしてくれます。
ただし、欠点としてあくまでも現在動いているレベル内で使用されているアセットのみになります。つまり別レベルで使用されているアセットなどは検出できませんので、ご注意を。
使用済みか未使用かを整理する
最終的にパッケージングしてリリースする際に、全てのレベルを辿って、使用中のものだけをまとめて移動させて、残ったアセットは一旦プロジェクトから外して、パッケージしてしまうという手があります。これで最終的なパッケージには必要なアセットだけを含むということが可能になります。
が、どこまで完全なものかはわかりませんので、使用する際はバックアップをとっておくなど十分に注意しておいてください。