起因:在开发过程中,每个人的代码编写风格都是不一样的,在团队协作开发过程中,为了更加方便、高效的合作,代码的可阅读性必须非常高才行,所以应该从最基本的脚本创建开始执行
脚本模板示例:
模板规范流程:
1、首先找到Unity的安装路径,然后定位到Editor\Data\Resources\ScriptTemplates目录下,这个目录下的文件是Unity默认的脚本创建模板,本文只介绍 81-C# Script-NewBehaviourScript.cs 此模板的自定义,其他的有兴趣可以自己研究
2、使用文本编辑器打开 81-C# Script-NewBehaviourScript.cs,以下是我的自定义模板,图示已经做了详细描述,剩下的就是各位自己DIY了
/*
* FileName: #SCRIPTNAME#
* CompanyName: #CompanyName#
* Author: #Author#
* CreateTime: #CreateTime#
* UnityVersion: #UnityVersion#
* Version: #Version#
* Description:
*
*/
using UnityEngine;
public class #SCRIPTNAME# : MonoBehaviour
{
private void Start()
{
}
}
3、在自己的Unity工程中,创建Editor文件夹,在文件夹内创建脚本CustomScriptTemplate.cs
脚本内容如下:
using UnityEngine;
using System.IO;
public class CustomScriptTemplate : UnityEditor.AssetModificationProcessor
{
/// <summary>
/// 此函数在asset被创建完,文件已经生成到磁盘上,但是没有生成.meta文件和import之前被调用
/// </summary>
/// <param name="newFileMeta">newfilemeta 是由创建文件的path加上.meta组成的</param>
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("#CompanyName#", "CompanyName");
scriptContent = scriptContent.Replace("#Author#", "WangDouDou");
scriptContent = scriptContent.Replace("#Version#", "1.0");
scriptContent = scriptContent.Replace("#UnityVersion#", Application.unityVersion);
scriptContent = scriptContent.Replace("#CreateTime#", System.DateTime.Now.ToString("yyyy-MM-dd-HH:mm:ss"));
File.WriteAllText(realPath, scriptContent);
}
}
注意,替换名字时一定要注意,代码中的名字要跟你安装目录文件中的名字对应起来,否则会无效
至此,整个代码模板类就创建完成了,可以自己创建一个脚本做一下测试