Unity Searchとは?

UnityEditorにおける、プロジェクト内、ヒエラルキー内、メニュー、設定、ファイルなど様々なものを検索し、

その結果に対してアクションを実行できる機能です。

例えば

  • アセットを名前で検索して絞り込む
  • メニュー上の項目を検索して実行する

などです。

Unity2021以降で使用できます。

UnitySearchウィンドウを開く

メニューのEditSearch Allを実行するかショートカットキーから開くことが出来ます。

ProjectHierarchyの検索欄の隣にあるこの部分からも開くことが出来ます。

インスペクタから開くには?

インスペクタ上でオブジェクトを選択する際にもUnitySearchを使用できます。

上図のように通常のObjectSelectorが表示される場合は、Preferencesを開き、

SearchSearch EnginesObject SelectorClassicからAdvancedに変更します。

これでUnitySearchが開くようになります。

クエリについて

これまでProjectの検索欄上で「t:Scene」と入力することでシーンファイルのみを絞り込むことが出来ましたが、

UnitySearch上もで同じ事が出来ます。

いちいちキーボードからクラス名などを入力するのが面倒な場合は、下図のボタンからクエリビルダーモードに入ることが出来ます。

入力欄の表示がGUIに代わり、+ボタンから検索の対象を選択して絞り込むことが出来ます。

インスペクタを開く

ウィンドウの右側にあるiボタンを押すと、UnitySearchウィンドウ上にインスペクタを表示でき、

アセット中身を確認したり編集したり出来ます。

検索結果を保存する

検索結果を保存することも出来ます。

インスペクタを表示したiボタンの隣のボタンを押すとメニューが表示されます。

  • Save User
    • PC上に保存されます
  • Save Project…
    • ダイアログが表示され、保存先を選択できます。
    • プロジェクトを複数人で共有している場合はこちらで保存すると便利かもしれません。

保存されたファイルをダブルクリックするとそのままUnitySearchウィンドウが開き、検索結果も再現されます。

表示内容を増やす

テーブルビューで表示している場合はカラムを追加し、

アセットの任意の情報を追加することが出来ます。

Enable Mip Mapを追加してみました。

TextureImportSettingsでは、Generate MipMapsの値です。

TextMeshProについてくるEmojiOne.pngMipMapが有効になっていることが分かります。

通常uGUIで使用するテクスチャにMipMapは必要ないですが、このテクスチャは3D空間上に表示される場合もあるのでこうなっているのでしょう。

もしご自分で用意されたuGUI用のテクスチャのMipMapが有効になっていたら、

無駄にメモリを確保することになるので無効にすることをおすすめします。

積極的に使おう

UnitySearchの登場で格段にアセットを検索しやすくなりました。

特に大量のアセットの中から特定のプロパティの値を比較できるのが便利ですね。

以前は設定のおかしいアセットを検出するためのエディタ拡張を作ったりしていましたが、

UnitySearch上で手軽に調べられるのでもう不要そうですね。

検索結果を保存して再利用できるので、積極的に活用したいところです。