以下の内容はhttps://baba-s.hatenablog.com/entry/2022/09/10/192926_2より取得しました。


【Unity】MenuItem で Hierarchy の Create メニューを自作する時のお作法

概要

「GameObject」メニューにゲームオブジェクトを作成するメニューを追加する場合、
「GameObjectUtility.SetParentAndAlign」を必ず呼び出し、
親を設定し、子に同じレイヤーと位置を与えます。

また、「Undo.RegisterCreatedObjectUndo」を呼び出して作成を取り消し、
新しくオブジェクトを生成するときの Undo 操作を登録します。

さらに、「Selection.activeObject」に
新しく作成したオブジェクトを設定する必要があります。

「GameObject」メニューに自作のメニューを追加する場合、
他の GameObject 作成メニューとグループ化する必要があることに注意してください。
これは、優先度を「10」に設定することで実現できます。

優先度が設定されていないものは、
デフォルトの「1000」ではなく「10」が優先されることに注意してください。

using UnityEditor;
using UnityEngine;

public class Example
{
    [MenuItem( "GameObject/ピカチュウ", false, 10 )]
    private static void Create( MenuCommand menuCommand )
    {
        // ゲームオブジェクトを生成します
        var gameObject = new GameObject( "ピカチュウ" );
        
        // 親を設定して同じレイヤーを継承します
        GameObjectUtility.SetParentAndAlign( gameObject, menuCommand.context as GameObject );
        
        // Undo できるようにします
        Undo.RegisterCreatedObjectUndo( gameObject, "ピカチュウ" );
        
        // 生成したゲームオブジェクトを選択状態にします
        Selection.activeObject = gameObject;
    }
}

参考サイト様




以上の内容はhttps://baba-s.hatenablog.com/entry/2022/09/10/192926_2より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14