LoginSignup
13
7

More than 5 years have passed since last update.

【Unity2017】TileMapエディターを簡単に開くエディター拡張を作ってみた

Last updated at Posted at 2017-09-26

はじめに

Unity2017.2でタイルマップエディターが新しく追加されました。
タイルマップエディターは素晴らしい機能ですが、タイルマップを編集するには

  1. ProjectビューでGridアセットを選択
  2. メニューから"Window/Tile Palette"を選択してウィンドウを開く

という手順を踏む必要があって若干めんどくさいです。

そこで、Gridコンポーネントのインスペクター上から直接Tile Paletteウィンドウを開くエディター拡張を作ってみました。

環境

Unity2017.2.0f1
Windows 10

つくったもの

1.gif

Gridコンポーネントのインスペクター上からTile Paletteウィンドウを開くエディター拡張を作ってみました。

HierarchyからでもTile Paletteウィンドウを開くことができるので、わざわざProjectビュー上でGridアセットを選択する必要がありません。

これさえあれば快適にTileMapエディターが使えるかと思います。

ソースコード

プロジェクト内にEditorフォルダを作成し、以下のスクリプトを入れるとこのエディター拡張が使えるようになります。

GridInspector.cs
using UnityEngine;
using UnityEngine.Tilemaps;
using UnityEditor;

[CustomEditor(typeof(Grid))]
public class GridInspector : Editor
{
    public override void OnInspectorGUI()
    {
        if (GUILayout.Button("Open Tile Palette"))
        {
            // Tile Paletteウィンドウを開く
            EditorApplication.ExecuteMenuItem("Window/Tile Palette");

            // Gridアセットの選択
            Selection.activeObject = null; // いったん選択を外す
            EditorApplication.delayCall += () =>
            {
                Selection.activeObject = PrefabUtility.GetPrefabParent(target) ?? target; // Gridアセットを選択
            };
        }
        base.DrawDefaultInspector();
    }
}
13
7
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
7