概要
Tilemap が複製された時は Tile Palette の Active Tilemap は変化しないですが
using System.Reflection; using UnityEditor; [InitializeOnLoad] public static class Example { static Example() { EditorApplication.hierarchyChanged += OnChanged; } private static void OnChanged() { var assembly = typeof( AssetDatabase ).Assembly; var type = assembly.GetType( "UnityEditor.GridPaintingState" ); var property = type.GetProperty( "scenePaintTarget", BindingFlags.Public | BindingFlags.Static ); property.SetValue( type, Selection.activeGameObject ); } }
上記のようなエディタ拡張を Unity プロジェクトに追加することで
Tilemap が複製された時に、複製された Tilemap が
Tile Palette の Active Tilemap に自動で設定されるようになります