Selection Groups ユーザードキュメンテーション
概要
Selection Groups を使うことで、共通の名前で多数のUnityオブジェクトを分類できます。 デフォールトとして、Selection Groups のデータはシーンに保存され、スクリプトでデータをアクセスできます。
別の方法として、Selection Groups のデータをシーンの外に保存することもできます。 これにより、Selection Groups とシーン間の分離が可能になり、データ管理がより容易になりますが、スクリプトでグループデータをアクセスできないというトレードオフがあります。
はじめに
- ウィンドウ > 一般 > Selection Groups から Selection Groups のウィンドウを開きます。
Selection Groups のウィンドウが開かれ、このウィンドウをヒエラルキーウィンドウの横にドッキングするのをお勧めします。 - Selection Groups のウィンドウで "Add Group" をクリックすると、ウィンドウ内に新しい項目が表示されます。
- ヒエラルキーからのゲームオブジェクト、またはプロジェクトウィンドウからのアセット をいくつかドラッグします。
- グループ名をダブルクリックすると、設定のダイアログボックスが表示されます。
- グループ名と色、GoQLクエリを変更したり、グループのツールバーボタンを有効または無効にしたりできます。
- Selection Groups のデータを保存する場所も設定できます。
- GoQL:Game Object Query Language フィールドでは、クエリに一致するヒエラルキーからゲームオブジェクトを自動的に抽出するクエリを指定できます。
例えば、
/ Enemy*
は、ヒエラルキーのルートにあり、かつ名前がEnemy
で始まるすべてのゲームオブジェクトを抽出します。 詳細については、GoQLのドキュメントを参照してください。
- グループのツールバーボタンのチェックボックスは、メインの Selection Groups ウィンドウで、各グループに対するツールバーのボタンを有効・無効できます。
このツールバーのボタンを使用することで、1つのクリックでグループ全体を表示または非表示にしたり、グループ全体の編集を有効または無効にしたりできます。
#Selection Groups のデータがシーンの外で保存される仕組み
Unity には、シーン内のオブジェクトのグローバル識別子を作成するための API(GlobalObjectId)があります。
Selection Groups は、この API を使って、プロジェクトの外部のアセットに保存されるオブジェクトへの参照を格納します。
これにより、プロジェクト全体に同じグループを共有することができ、同じグループに複数のシーンのゲームオブジェクトとゲームアセットを入れることができます。
シーンがロードされると、Selection Groups ウィンドウには、そのシーンに存在する GameObjects のみが表示されます。