Unity修改创建的脚本模板,Unity脚本模板路径

Unity 脚本路径

将脚本放到Editor文件夹下,Editor文件夹位置不限。

using UnityEditor;
using UnityEngine;
using System.IO;

public class AddFileHeadComment : UnityEditor.AssetModificationProcessor
{
    ///   
    /// 此函数在asset被创建完,文件已经生成到磁盘上,但是没有生成.meta文件和import之前被调用  
    ///   
    /// newfilemeta 是由创建文件的path加上.meta组成的  
    public static void OnWillCreateAsset(string newFileMeta)
    {
        string newFilePath = newFileMeta.Replace(".meta", "");
        string fileExt = Path.GetExtension(newFilePath);
        if (fileExt != ".cs")
        {
            return;
        }
        //注意,Application.datapath会根据使用平台不同而不同  
        string realPath = Application.dataPath.Replace("Assets", "") + newFilePath;
        string scriptContent = File.ReadAllText(realPath);

        //这里实现自定义的一些规则  
        scriptContent = scriptContent.Replace("#SCRIPTNAME#", Path.GetFileName(newFilePath));
        scriptContent = scriptContent.Replace("#COMPANY#", PlayerSettings.companyName);
        scriptContent = scriptContent.Replace("#AUTHOR#", "Passion");
        scriptContent = scriptContent.Replace("#VERSION#", "1.0");
        scriptContent = scriptContent.Replace("#UNITYVERSION#", Application.unityVersion);
        scriptContent = scriptContent.Replace("#CREATETIME#", System.DateTime.Now.ToString("F"));

        File.WriteAllText(realPath, scriptContent);
    }
}

再创建脚本的时候会读取创建的脚本,然后替换脚本中的字段。

脚本模板路径

再hub中获取Unity的安装路径+\Data\Resources\ScriptTemplates;就可以找到脚本模板,第一个就是。然后将

// **********************************************************************
//  文件信息
// 文件名(File Name):                #SCRIPTNAME#.cs
// 作者(Author):                         填写你的名字
// 创建时间(CreateTime):             #CREATETIME#
// Unity版本(UnityVersion):         #UNITYVERSION#
// 脚本描述(Module description):
// **********************************************************************

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

    #ROOTNAMESPACEBEGIN#
public class #SCRIPTNAME# : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        #NOTRIM#
    }

    // Update is called once per frame
    void Update()
    {
        #NOTRIM#
    }
}
#ROOTNAMESPACEEND#


黏贴进去即可。

你可能感兴趣的:(Unity,Unity)