概要 Addressable ではビルドキャッシュが実装されているため アセットバンドルに含めるアセットを変更していない場合、 該当のアセットバンドルのビルドはスキップされてビルド時間を短縮できるが、 アセットを変更していないのにビルドに時間がかかる場合…
概要 com.unity.scriptablebuildpipeline@1.19.3/Editor/Shared/BuildTasksRunner.cs 上記のファイルに記載されている BuildTasksRunner.Run メソッドの foreach (IBuildTask task in pipeline) { var sw = Stopwatch.StartNew(); // ★ { try { if (!tracker…
検証環境 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 Separ…
検証環境 Windows 10 Unity 2020.3.13f1 Addressables 1.19.11 検証方法 10,000 個の Text Asset(.txt)を用意して すべての Text Asset にアドレスを割り振って Default Local Group に追加して Default Local Group の Bundle Mode を 「Pack Together(…
検証環境 Addressables 1.16.19 概要 Addressables でローカルカタログを圧縮する設定を有効化して アセットバンドルをビルドするようにしたところ、 「buildlogtep.json」というビルドログのファイルが アプリビルド時にアプリに含まれるようになってしまっ…
検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 ローカルカタログを読み込む処理に時間がかかるようになり、 メインスレッドが止まってしまう 重たい処理は TextDataProvider.Start 関数で File.ReadAllText を使用して…
検証環境 Addressables 1.16.19 概要 Addressable を使用しているプロジェクトで Android ビルドして StreamingAssets からアセットバンドルを読み込んだ時に そのアセットバンドルがキャッシュに保存されない現象に遭遇した Addressable の AssetBundleProv…
検証環境 Addressables 1.16.19 概要 Exception: Attempting to use an invalid operation handle UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationHandle.get_InternalOp () (at Runtime/ResourceManager/AsyncOperations/AsyncOperationHan…
検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 Addressables.UpdateCatalogs の処理に時間がかかるようになり、 メインスレッドが止まってしまう 重たい処理は UpdateCatalogsOperation.Execute 関数なので この部分を…
検証環境 Addressables 1.16.19 概要 Addressables でローカルカタログを圧縮する設定を有効化して アセットバンドルをビルドするようにしたところ、 「buildlogtep.json」というビルドログのファイルが アプリビルド時にアプリに含まれるようになってしまっ…
検証環境 Addressables 1.16.19 概要 Exception: Attempting to use an invalid operation handle UnityEngine.ResourceManagement.AsyncOperations.AsyncOperationHandle.get_InternalOp () (at Runtime/ResourceManager/AsyncOperations/AsyncOperationHan…
検証環境 Addressables 1.16.19 概要 Addressable Asset Group の Inspector で Advanced Options は デフォルトが閉じた状態なので、各グループの Advanced Options を見たい場合に 毎回 Advanced Options の ▶ をクリックして開く必要がある BundleAssetGr…
検証環境 Addressables 1.16.19 概要 Addressables はデフォルトでは Basic 認証が設定されたサーバから リモートカタログをダウンロードすることができない TextDataProvider.Start 関数で UnityWebRequest を使用して リモートカタログのダウンロードが実…
検証環境 Addressables 1.16.19 概要 Addressables ではサーバからダウンロードしたリモートカタログを 端末のキャッシュに保存する際に、ストレージの空き容量を確認していない そのため、空き容量が不足していると File.WriteAllText で例外が発生して Con…
検証環境 Addressables 1.16.19 概要 Addressables の LoadScene でシーン遷移する時に 通信環境が悪いなどの理由でアセットバンドルの読み込みに失敗した場合、 SceneProvider で AsyncOperationBase.Complete が呼ばれなくなり それ以降 Addressables の A…
検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 リモートカタログをキャッシュに保存する処理に時間がかかるようになり、 メインスレッドが止まってしまう 重たい処理は ContentCatalogProvider.OnCatalogLoaded 関数で…
検証環境 Addressables 1.16.19 概要 Jenkins から Addressables のビルドを実行する場合、 アセットバンドルのビルドに失敗しても、 Jenkins 上ではビルドに成功したことになってしまった アセットバンドルをビルドする AddressableAssetSettings.BuildPlay…
検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 Addressables.CheckForCatalogUpdates の処理に時間がかかるようになり、 メインスレッドが止まってしまう 重たい処理は CheckCatalogsOperation.Execute 関数なので こ…
検証環境 Addressables 1.16.19 概要 Addressables で管理しているグループが多いと、 カタログの JSON のサイズが大きくなり、 カタログの読み込みに時間がかかるようになり、メインスレッドが止まってしまう カタログは JSONAssetProvider クラスで JsonUt…
概要 1.17.0 以降の Addressable Asset System なら AddressableAssetSettings の「Ignore Invalid/Unsupported Files in Build」をオンにすると 無効なファイルや Unity がサポートしていないファイルを無視できる
概要 1.16.10 以降の Addressable Asset System なら AddressableAssetSettings の「Optimize Catalog Size」をオンにすると カタログのサイズを減らせる
概要 1.13.1 以降の Addressable Asset System なら AddressableAssetSettings の「Contiguous Bundles」をオンにすると アセットバンドルの読み込み速度を改善できるらしい Added AddressableAssetSettings.ContiguousBundles option, which when enabled w…
概要 ArgumentException: Asset 'Assets/__DELETED_GUID_Trash/XXXX' is not a valid Asset or Scene. Addressable でアセットバンドルをビルドする時に 上記のエラーが発生してビルドに失敗する現象に遭遇した Unity を再起動してからアセットバンドルをビ…
概要 Broken text PPtr in file(XXXX.unity). Local file identifier (YYYY) doesn't exist! Addressable でアセットバンドルをビルドする時に 上記のエラーが発生する現象に遭遇した 該当のシーンファイルのフォーマットが バージョンアップ前の Unity のも…
概要 using UnityEditor; using UnityEngine; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var path = AssetDatabase.GetAssetPath( Selection.activeObject ); var mainAssetType = AssetDatabase.GetMainAsse…
概要 using System.Reflection; using UnityEditor; using UnityEditor.AddressableAssets; using UnityEditor.AddressableAssets.Settings; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var settings = Addres…
ソースコード
ソースコード 使用例 using UnityEditor; using UnityEditor.AddressableAssets; using UnityEditor.AddressableAssets.Settings; using UnityEngine; public class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var settings = Addr…
概要 AssetBundle.LoadFromFile( path ); AssetBundle.LoadFromFile で AssetBundle の manifest を読み込もうとしたところ 以下のエラーが発生する状態だった Unable to read header from archive file: XXXX 2点勘違いしていたのでそこを直したら正常に動…
概要 Addressable Asset System 1.8.4 を使用しているプロジェクトで カタログがキャッシュに存在する状態で InitializeAsync を実行すると 進行不能になる現象に遭遇した 1.8.5 にアップデートしても直らなかった 1.9.2 にアップデートしたら直った