AsyncReadManagerMetricsで得られる情報をUnityEditor上から取得するパッケージです。 Unityの非同期読み込みに関する各種情報を計測し、グラフで表示することが可能です。計測したデータはCSV形式で出力することも可能です。
Unity2020.3.33f1 + Andoroid端末(Pixel4XL)で動作確認を行っています。
IMGUIExtentionsとRemoteConnectに依存している為、合わせて取得して下さい。
コンソールから下記のコマンドを実行してください。
git clone https://github.com/katsumasa/IMGUIExtentions.git
git clone https://github.com/katsumasa/RemoteConnect.git
git clone https://github.com/katsumasa/AsyncReadManagerMetricsRemote.git
下記の手順
- Window > Package ManagerでPackage Managerを開く
- Package Manager左上の+のプルダウンメニューからAdd package form git URL...を選択する
- ダイアログへ
https://github.com/katsumasa/IMGUIExtentions.git
を設定し、Addボタンを押す - Package Manager左上の+のプルダウンメニューからAdd package form git URL...を選択する
- ダイアログへ
https://github.com/katsumasa/RemoteConnect.git
を設定し、Addボタンを押す - Package Manager左上の+のプルダウンメニューからAdd package form git URL...を選択する
- ダイアログへ
https://github.com/katsumasa/AsyncReadManagerMetricsRemote.git
を設定し、Addボタンを押す
- PrefabAsyncReadManagerMetricsRemotePlayerをSceneに配置してDevelopmentビルドを行います
- Window > UTJ > AsyncReadManagerMetricsRemote からEditorWindowを起動させます
- Connect to から端末を選択
- Startボタンを押すことで計測が開始されます。
- Stopボタンで計測を終了します
- Saveボタンで計測結果をCSVファイルへ出力します
AsyncReadManagerMetrics.StartCollectingMetrics()
とAsyncReadManagerMetrics.StopCollectingMetrics()
の間(つまりデータ記録中)に、AseetBundle.UnloadとResources.UnloadUnusedAssetsを組み合わせて実行するとクラッシュが発生することを確認していますのでご注意下さい。
本プラグインのサンプルプロジェクトはこちらです。
質問・バグ報告はIssuesからお願いします。対応の約束は出来かねますが可能な限り対応します。
以上