Unity-创建C#模板
Posted zhonghu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity-创建C#模板相关的知识,希望对你有一定的参考价值。
在项目开发的过程中,我们需要对一个.cs文件添加一些注释(例如:创建者,创建日期,该类的作用),或者给创建的类增加某个通用的函数。如果我们每创建一个.cs文件都需要添加这些会影响我们的开发效率,那么这个时候就需要一个模版来解决这个问题。
首先,我们打开Unity的安装目录E:\unity2018.2.16f1\Unity\Editor\Data\Resources\ScriptTemplates,当然每个人在电脑上安装的目录不一样,所以注意前面目录及unity版本的问题;打开81-C# Script-NewBehaviourScript.cs.txt文件,我们可以先看一下Unity默认创建.cs文件是它的格式。
public class #SCRIPTNAME# : MonoBehaviour // Use this for initialization void Start () #NOTRIM# // Update is called once per frame void Update () #NOTRIM#
我们可以看到这个模版正是我们每次创建.cs文件时对应的模版,这个时候我们就会想到,那是不是把这个模版改掉之后我们创建的.cs文件默认的文本也改变了呢?
/**************************************************** 文件:#SCRIPTNAME#.cs 作者:Plane 邮箱: 1785275942@qq.com 日期:#CreateTime# 功能:Nothing *****************************************************/ using UnityEngine; public class #SCRIPTNAME# : MonoBehaviour
这个时候我们去Unity里面创建一个.cs文件,发现它的创建内容确实变了,但是这个时候又有一个问题出现了,我们创建出来的文本的注释不会随着时间的推移进行改动,或者说如何在创建一个.cs文件的时候就将需要修改的地方进行修改。
我们在Unity的项目工程中新建一个文件夹Editor,然后新建一个.cs文件
/************************************************************ 文件: ScriptsInfoRecoder.cs 作者: Plane 邮箱: 1785275942@qq.com 日期: 2013/10/13 12:01 功能: 记录脚本信息 *************************************************************/ using System; using System.IO; public class ScriptsInfoRecoder : UnityEditor.AssetModificationProcessor private static void OnWillCreateAsset(string path) path = path.Replace(".meta", ""); if (path.EndsWith(".cs")) string str = File.ReadAllText(path); str = str.Replace("Plane", Environment.UserName).Replace( "#CreateTime#", string.Concat(DateTime.Now.Year, "/", DateTime.Now.Month, "/", DateTime.Now.Day, " ", DateTime.Now.Hour, ":", DateTime.Now.Minute, ":", DateTime.Now.Second)); File.WriteAllText(path, str);
这个时候我们发现再次新建的文件它的日期变了,如果我们还需要修改其他的一些模版信息,同理,可以按照上面的方法来实现。
以上是关于Unity-创建C#模板的主要内容,如果未能解决你的问题,请参考以下文章
Unity Hub 自定义一个创建新项目模板(Template)