在Unity Hub中创建新项目时,官方给我们提供了一系列项目模板,通过不同模板创建新项目,新的工程文件中会自动包含相应的内容,本文介绍的是如何自定义一个模板,以便在我们创建新项目时,里面包含我们经常用到的框架、模块、工具等,而不需要再依次手动导入。
首先准备模板内容,这里以本人总结的一个小型开发框架SKFramework为例,将其作为模板内容:
右键Assets/Show In Explorer 在文件夹中打开,将Assets、Packages及ProjectSettings三个文件夹放入一个新创建的文件夹,命名为ProjectData~,并将ProjectSettings文件夹中的ProjectVersion.txt文件删除。
创建一个新的文件夹命名为package,将ProjectData~放入其中,创建package.json文件:
编辑package.json文件内容,下面是内置模板2D里面的内容:
代码语言:javascript复制{
"dependencies": {
"com.unity.2d.animation": "5.0.1",
"com.unity.2d.pixel-perfect": "4.0.1",
"com.unity.2d.psdimporter": "4.0.1",
"com.unity.2d.sprite": "1.0.0",
"com.unity.2d.spriteshape": "5.0.1",
"com.unity.2d.tilemap": "1.0.0"
},
"description": "This is an empty project configured for 2D apps. It uses Unity's built-in renderer.",
"displayName": "2D",
"host": "hub",
"name": "com.unity.template.2d",
"type": "template",
"unity": "2020.2",
"version": "5.0.0",
"upmCi": {
"footprint": "b9fce23da2d7bfe4662dc289a4a555a912718737"
},
"repository": {
"url": "https://github.cds.internal.unity3d.com/unity/2d.git",
"type": "git",
"revision": "d7370653c2e19d53f4ab9038f07e4816427481bf"
}
}
我们Copy过来稍作修改:
其中displayName是我们创建的模板的名称,dependencies是依赖项,我们可以将其删除也可以保留,完成后将package文件夹压缩为.tgz文件。这里我使用的是7-Zip解压缩软件,下载地址:https://www.7-zip.org
压缩格式选项里没有.tgz选项,我们可以先将其压缩为.tar文件,再将其后缀改为.tgz,本人测试了一下是可用的。
打开Unity的所在文件夹,依次打开路径Editor / Data / Resources / PackageManager / ProjectTemplates:
最终将压缩好的.tgz件放入,修改一下名字:
重启Unity Hub,新建一个项目,可以在创建新项目窗口里看到我们添加的自定义模板了:
通过SKFramework模板创建项目Template TEST,可以看到我们新创建的工程里已经自动包含SKFramework框架了: