13
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Unity:自作スクリプトテンプレートを複数個メニューに表示させる方法

Posted at

初投稿です。宜しくお願いします。

動作確認環境

Mac版5.3.4f1、5.4.0f1
未確認ですが、Windows版でも可能だと思います。

はじめに

C#スクリプトファイルの新規生成時の内容をカスタマイズする場合、81-C# Script-NewBehaviourScript.cs.txt の内容を編集する、
という紹介が多いのですが、用途ごとに複数個テンプレートファイルを作成し、Createメニューに表示させる方法を記載します。

用途ごとテンプレートを用意しておくことで、新規スクリプトの記述開始が早くなるのではないでしょうか。
また、この記事ではC#ファイルでの記述ですが、Javascriptやシェーダーなども同じアプローチで出来るとか思います。

デフォルトでは1つですが
menu1.jpg

このようなことが可能です。(階層構造もOK)
menu2.jpg

必要なもの

テンプレートを記述したテキストファイルで81-C# Script-NewBehaviourScript.cs.txtとは異なる名前のファイル
(最初の時点では拡張子txtならファイル名は何でも良いです。以降ファイル名について記載します)

ファイルの置き場所

81-C# Script-NewBehaviourScript.cs.txt と同じフォルダです。

ファイル命名規則

ファイル名にUnityが認識する規則性のあるファイル名にすることでCreateメニュー追加されます。

81-

ここはどのファイルでも共通です。C#スクリプトの場合、ファイル名の開始文字列は”81-”とします。
※Javascriptやシェーダーの場合82、83となっていると思いますので、以降は適宜読み替えて下さい。

例として、”C# My Custom C# Script” と表示されるテンプレートファイルを記載します。

81-C# My Custom C# Script-NewScript.cs.txt

ポイント

-(半角ハイフン)がデリミタとなっていて、"ハイフン以降の文字列.cs"が実際にアセットファイル名として作成されます。
どのファイルでも共通です。

結果

sample1.jpg

sample1_new.jpg

ここまでのまとめ

ここまでの流れをまとめますと以下の書式になります。

81-”Createメニューに表示させたいテキスト”-”実際に新規作成されるアセットファイル名”.cs.txt

階層構造を含める場合

menu2.jpg

このようにする場合、実際にフォルダを作成するのではなくファイル名で解決できます。
フォルダとして認識するデリミタ文字は__(半角アンダースコア2文字)です。

先程記載した 81-C# My Custom C# Script-NewScript.cs.txt に対し、Createメニュー上で「C# My Script」という階層を付与した場合、こうなります。

81-C# My Script__My Custom C# Script-NewScript.cs.txt

結果

sample2.jpg

さらに階層を深くする場合、__(半角アンダースコア2文字)を再度使用することで実現できます。

menu2.jpg

上図で選択されている Window Script の場合のテンプレートファイル名の例です。

81-C# Ext__Editor__Window Script-NewScript.cs.txt

まとめ

以上をまとめますと、以下の書式になります。

81-”Createメニューに表示させたいテキスト(階層構造にしたい場合は階層分だけ<階層名__>を記述)”-”実際に新規作成されるアセットファイル名”.cs.txt
13
17
0

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
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?