コガネブログ

平日更新を目標にUnityやC#、Visual Studioなどのゲーム開発アレコレを書いていきます

【Unity】Hierarchy を拡張するアセット「PRO Hierarchy + Memory Monitoring + Navigator for Selecting」紹介

はじめに

この記事は「Unity アセット真夏のアドベントカレンダー 2017」の8/18の記事です

昨日は ゆう さんの「開発効率を上げ、手軽に拡張できるFSM「Arbor2」紹介」でした
明日は 青木とと さんの「TextMeshProで生成したテキストをDOTween(Pro)を使って動かす」です

概要

2017/6/15 に、エディタ拡張用のアセット
「PRO Hierarchy + Memory Monitoring + Navigator for Selecting」がリリースされました

「PRO Hierarchy + Memory Monitoring + Navigator for Selecting」を導入すると、
Hierarchy ビューの見た目や操作性を拡張することができます

公式サイト

検証環境

  • Unity 5.6.2f1
  • PRO Hierarchy + Memory Monitoring + Navigator for Selecting 1.1

インターフェース

「PRO Hierarchy + Memory Monitoring + Navigator for Selecting」を導入すると、
Hierarchy ビューの見た目は次のようになります

f:id:baba_s:20170816105559p:plain

Hierarchy ビューの表示項目は追加できます

f:id:baba_s:20170808155256g:plain

表示順を変更することも可能です

f:id:baba_s:20170816114453g:plain

左クリックでパラメータを変更できます

f:id:baba_s:20170808155922g:plain

操作

ドラッグでパラメータの設定を一括変更できます

f:id:baba_s:20170808161617g:plain

タグやレイヤーを簡単に割り当てられます

f:id:baba_s:20170816103235g:plain

各オブジェクトにコメントを付与することも可能です

f:id:baba_s:20170816103545g:plain

一括でパラメータを変更することも可能です

f:id:baba_s:20170816112633g:plain

f:id:baba_s:20170816112647g:plain

コンポーネント

コンポーネントの Enabled をその場で変更できます

f:id:baba_s:20170816103753g:plain

コンポーネントの削除や

f:id:baba_s:20170816104036g:plain

コンポーネントのパラメータのコピペも可能です

最適化ヒント

3Dオブジェクトの場合はトライアングルの数が表示されます
テクスチャの占有メモリも確認できます

f:id:baba_s:20170816105958p:plain

アイコン

オブジェクトにアイコンを割り当てることができます

f:id:baba_s:20170816110601g:plain

オブジェクト選択

よく選択するオブジェクトを Hierarchy の下部に登録しておくことができます

f:id:baba_s:20170816111128g:plain

コンテキストメニュー拡張

IGenericMenu インターフェイスを実装することで
コンテキストメニューに項目を追加することができます

using HierarchyExtensions;
using UnityEngine;

public class Example : IGenericMenu
{
    public string Name { get { return "メニュー名"; } }

    public int PositionInMenu { get { return 0; } }

    public bool IsEnable( GameObject clickedObject )
    {
        return clickedObject.transform.childCount == 0;
    }

    public void OnClick( GameObject[] affectedObjectsArray )
    {
        foreach ( var n in affectedObjectsArray )
        {
            n.name = "ピカチュウ";
        }
    }
}

f:id:baba_s:20170816114122g:plain

環境設定

Unity メニューの「Edit>Preferences...>Hierarchy」から設定を変更できます

f:id:baba_s:20170816114717p:plain

まとめ

普段 Inspector で設定しているパラメータを Hierarchy で変更できるようになるため
開発の手間を改善することができます

また、Hierarchy でコンテキストメニューが使えるようになるため
自前のコマンドを作成して開発効率を改善することも可能です

興味がある方はぜひ購入してみて頂ければと思います