PerformanceTuning
UnityのProfiling Core APIを使ってProfilerに表示する情報を拡張する方法についてまとめました。 はじめに インストール ProfilerMarkerをCustomSamplerのように使う メタデータを埋め込む 独自のカウンターグラフを作成する 関連 参考
UnityのProfilerで細かい処理時間の計測はCustomSamplerを使うのが手っ取り早いという話です。 はじめに 重い処理を計測する Deep Profilingする CustomSamplerを使う 関連 参考
Unity2020.1からProfilerがスタンドアロンで起動可能になり、プロファイリング時のノイズを減らすことができるようになりました。 はじめに 起動方法 参考
UnityのProfilerで処理落ちの原因がメインスレッドなのかレンダースレッドなのかGPUなのか切り分ける手順についてまとめます。 パフォーマンスチューニングの一番最初にやるべきこと メインスレッド vs レンダースレッド・GPU レンダースレッド vs GPU 関連 …
UnityでPerformanceBenchmarkReporterを使ってPerformance Testing Extensionによるパフォーマンス測定結果を可視化する方法をまとめました。 はじめに ダウンロード 実行する 結果を見る 関連 参考
UnityのTest Runnerでパフォーマンステストを行うPerformance Testing Extensionの使い方についてまとめました。 はじめに セットアップ メソッドのパフォーマンスを計測する 計測結果を見る プロファイラのマーカーを指定して特定の処理のパフォーマンスを…
Genericな型の等価判定をすることによるメモリアロケーションの問題とその解決策、 及びUnity組み込み構造体のIEquatable実装状況についてまとめました。
Unityで指定したアセットのAssetBundle名を取得する方法をまとめました。
Memory Profilerでメモリを使いすぎなオブジェクトを特定する方法です。
UnityのFrameTimingManagerを使ってCPUとGPUの処理時間をそれぞれ計測する方法をまとめました。
Unityでメモリリークを分析するための方法をまとめました。
UnityでOculus Quest用のアプリをサクサク動かすためにやっておくべき設定項目についてまとめます。
Unityの物理計算をスクリプトで制御するときにパフォーマンスを落とさないために気を付けること
Renderer.materialで取得したマテリアルは自分で破棄しないとリークするというお話です。
UniRxでメモリリークするケースとAddToやTakeUntilDestroyの重要性についてまとめました。
Unityで作ったiOSアプリのCPUの処理負荷をXCodeで計測する方法です。
C#を使ったUnity開発で無駄なGCを防ぐためにUpdate内でやるべきじゃないことをまとめました。
UnityのProfilerでそのフレームにおけるメモリ割り当てを分析する方法です。
Unityで採用されているGCの仕組みとUnity2019からのインクリメンタルGCについて簡単にまとめました。
UnityのProfilerはパフォーマンス改善をするときに非常に有用なツールです。 しかしその分機能も多く複雑になっており、理解するための敷板が高くなってしまっています。 そこでこの記事では個人的にパフォーマンス改善に必要だと思う部分のみ簡単にまとめま…
UnityのMemory Profilerの基本的な使い方をまとめました。
UnityでiOS実機の処理負荷をUnityのProfilerでWifi経由で見る手順をまとめました。
USBを接続してAndroid実機の処理負荷をUnityのProfilerで見る手順をまとめました。
Debug.unityLogger.logEnabledで消せるログはDebug.Logだけだという話です。
AssetBundle化したSpriteのアトラステクスチャの名前から圧縮フォーマットを得る方法です。
あるAssetが参照するすべてのAssetを取得する方法です。
AssetBundleは依存関係に注意しないと、大きなAssetBundleができてしまったり重複が発生したりしてしまいがちです。 この記事ではあるAssetBundleとに紐づくAssetを解析する方法をまとめます。
ビルド後のAssetBundleから依存関係の情報を取得する方法です。 .manifestにも書かれてるけど・・・ フォルダ名のAssetBundleから依存関係を取得する
UnityのAssetBundleは便利な仕組みですが、何も考えずに作っていると、すごく容量の大きいAssetBundleができてしまったり、 一つのAssetBundleが他のAssetBundleに紐づいていてたくさんのAssetBundleをロードしなければならなくなってしまったりします。 こ…
UnityのuGUIは何も考えずに使っていると後からパフォーマンスが悪くなって大きく修正する必要が出てきてしまいます。 この記事では、uGUIのパフォーマンスを低下させる主要な原因とその対策をまとめました。