検証環境
- Windows 10
- Unity 2020.3.13f1
- Addressables 1.19.11
検証方法
1,000 個の Scriptable Object を用意して
すべての Scriptable Object にアドレスを割り振って Default Local Group に追加して
Default Local Group の Bundle Mode を
「Pack Separately(別々のアセットバンドルに分ける)」にした状態で
すべての Scriptable Object が他の Scriptable Object を参照していない場合と
100 個の Scriptable Object を参照している場合と
200 個の Scriptable Object を参照している場合と
1,000 個の Scriptable Object を参照している場合でビルド時間を比較
検証結果
項目 | ビルド時間 |
---|---|
依存関係 0 個 | 18 秒 |
依存関係 100 個 | 1 分 09 秒 |
依存関係 200 個 | 5 分 32 秒 |
依存関係 1,000 個 | 3 時間経っても終わらない |
依存関係が増えるほどビルド時間が伸びる
特にカタログ生成(GenerateLocationListsTask)に時間がかかるようになる
検証方法2
Default Local Group の Bundle Mode を
「Pack Together(ひとつのアセットバンドルにまとめる)」にしたらどうなるか検証
検証結果
項目 | ビルド時間 |
---|---|
依存関係 0 個 | 4 秒 |
依存関係 100 個 | 10 秒 |
依存関係 200 個 | 17 秒 |
依存関係 1,000 個 | 4 分 35 秒 |
依存しているアセットがすべて同じアセットバンドルに含まれていれば
依存関係が増えてもビルド時間を抑えられる