【Unity】コンパイル時間計測&プラットフォーム毎のコンパイルエラーチェックできるOSS『Compilation Visualizer for Unity』紹介

Unityでアセンブリ毎ののコンパイル時間の計測や、プラットフォーム毎のコンパイルエラーをチェックできるOSS『Compilation Visualizer for Unity』についてまとめます。

Unity 2021.3.0f1

はじめに

GitHub上で公開されているOSS『Compilation Visualizer for Unity』を使うと、アセンブリ毎ののコンパイル時間の計測ができます。

github.com

また副次的な機能として、各プラットフォームのコンパイルエラーを Test Runner のテスト項目からチェックできます。

本記事ではこのツールの使い方についてまとめます。

インストール

『Compilation Visualizer for Unity』のインストールは OpenUPM から行います。
OpenUPM でインストールを行う方法については以下の記事にまとめていますので、必要に応じて参照してください。

light11.hatenadiary.com

Scope(s) には com.needle.compilation-visualizer を指定します。

アセンブリ毎のコンパイル時間を計測する

ではまずアセンブリ毎のコンパイル時間を計測してみます。
Window > Analysis > Compilation Timeline を開き、Recompile ボタンを押下します。
コンパイルが走った後に、各アセンブリコンパイル時間がタイムライン形式で可視化されます。

コンパイル時間

エディタスクリプトを除いたプレイヤースクリプトだけを対象にするには、 Compile Player Scripts ボタンを押下します。
またこのボタンの右側のドロップダウンから、対象のプラットフォームを選択することができます。

アセンブリの名前をクリックすると、そのアセンブリの依存関係が可視化されます。

依存関係

また少しわかりづらいのですが、ズームイン、アウトはAltを押しながらマウス中ボタンをスクロールすることで行えます。

プラットフォーム毎のコンパイルエラーをチェックする

次にプラットフォーム毎のコンパイルエラーを Test Runner からチェックする方法について紹介します。
まず package.json を開き、testablescom.needle.compilation-visualizer を追加します。

  "testables": [
    "com.needle.compilation-visualizer"
  ],

次に Window > General > Test Runner から Test Runner を開きます。
すると BuildTargetCompiles([プラットフォーム名]) という名前で各プラットフォームについてのテストが存在していることを確認できます。
テストしたいプラットフォームの項目をダブルクリックするとテストできます。

コンパイルテスト

Test Runner については詳細は割愛しますが、以下の記事にまとめていますので必要に応じて参照してください。

light11.hatenadiary.com

関連

light11.hatenadiary.com

light11.hatenadiary.com

参考

github.com