本文首发公众号洪流学堂,让你快人几步。你好,我是你的技术探路者大智。
很多时候,我们希望创建的新工程中包含一些初始的资源和合理的配置,但是每次都得手动去配置和导入资源。特别是开发一些VRAR项目的时候,每次都需要导入一些包,对工程做一些配置。那么有没有办法制作一个初始的模板工程,以便我们每次创建工程的时候复用呢?
先说一个最简单的办法:维护一个初始工程,将所需要的初始配置和资源弄好以后,压缩或者上传Github,每次创建新工程时就把这个库下载下来作为新工程的起点。
当然,这个方法解决了问题,但是流程好像是有些繁琐。
有没有办法直接跟Unity创建工程的流程结合,并且能满足咱们自定义初始化工程的需要呢?
大智探索了一下发现还是有的,可以创建新工程模板,先放结果图:
那具体是怎么做的呢?
1、Unity创建工程时的离线Project模板是以文件的形式存放在Unity安装目录的。
还有一部分Project模板是在线模板,联网时可以刷新出来并且下载使用,大智还没有研究是否可以从在线模板入手,有知道的童鞋可以评论私信交流~
路径如下(不同Unity版本可能略有不同,大致路径如下):
- Mac:
/Applications/Unity/Hub/Editor/<VERSION>/Unity.app/Contents/Resources/PackageManager/ProjectTemplates
- Windows:
C:\Program Files\Unity\Hub\Editor\<VERSION>\Editor\Data\Resources\PackageManager\ProjectTemplates
也可以点击Unity Hub中已经安装的Unity菜单,找到安装位置,如下图:
2、在这个文件夹下你能看到一些tgz格式的压缩文件:
3、在windows上可以下载7-zip来编辑这些压缩文件。mac可以直接用命令行解压缩,请自行搜索。
4、现在可以尝试基于一个已有模板tgz来创建咱们自己的模板。核心是要修改里面的package.json和ProjectData~文件夹中的内容。
5、大智这基于com.unity.template.universal-7.5.2.tgz
,修改里面的package.json文件如下:
{
"name": "com.unity.template.universal.hongliu",
"displayName": "空白URP",
......其他不变
}
具体修改内容对比如下图:
如果要用中文的展示名称的话,记得把package.json的编码改成UTF8的,否则会显示乱码。
6、ProjectData目录中的文件,实际上就是一个Unity项目的所有文件,你先创建一个工程把所有东西都配置好,然后只把Asset、ProjectSettings、Packages目录放到ProjectData目录里就行了。比如现在我想设置一个URP模板,但是不要里面的示例资源,就可以把ProjectData~\Assets\
目录下除了Settings文件夹全部删掉。因为Settings中有URP Asset配置,需要保留。
删除的文件同时也把meta文件删掉,保留的文件注意别把meta文件删了,否则可能会丢失关联。
7、将所有文件重新压回tgz文件。mac请自行搜索命令。Windows上使用7-zip操作如下。
- 先把整个目录压缩为一个tar文件
- 在tar文件上右键,压缩的时候压缩格式选择gzip
- 压缩完扩展名是tar.gz,可以手动修改下改成tgz
8、修改下压好的tgz的文件名,否则会把原来的模板给覆盖掉,然后复制回\ProjectTemplates目录。
9、打开UnityHub,使用对应版本Unity创建工程时就能看到创建新项目模板了!
如果没显示出来需要重启下UnityHub。
最后还有一点需要注意的是:注意备份你的模板,因为卸载Unity版本的时候模板会被一起卸载掉。
安装了新版本Unity编辑器之后,也需要把原来的模板复制到新编辑器\ProjectTemplates
目录中一份。
呼~ 没讲清楚的地方欢迎评论私信,咱们一起探索。
我是大智(🛰:zhz11235),你的技术探路者,咱们下次见!
别走!点赞,收藏哦!
好,你可以走了。