讓Unity新建工程節(jié)省30分鐘——Unity中如何創(chuàng)建自己的項目模板?

本文首發(fā)公眾號洪流學(xué)堂,讓你快人幾步。你好,我是你的技術(shù)探路者大智。

很多時候,我們希望創(chuàng)建的新工程中包含一些初始的資源和合理的配置,但是每次都得手動去配置和導(dǎo)入資源。特別是開發(fā)一些VRAR項目的時候,每次都需要導(dǎo)入一些包,對工程做一些配置。那么有沒有辦法制作一個初始的模板工程,以便我們每次創(chuàng)建工程的時候復(fù)用呢?

先說一個最簡單的辦法:維護(hù)一個初始工程,將所需要的初始配置和資源弄好以后,壓縮或者上傳Github,每次創(chuàng)建新工程時就把這個庫下載下來作為新工程的起點(diǎn)。

當(dāng)然,這個方法解決了問題,但是流程好像是有些繁瑣。

有沒有辦法直接跟Unity創(chuàng)建工程的流程結(jié)合,并且能滿足咱們自定義初始化工程的需要呢?

大智探索了一下發(fā)現(xiàn)還是有的,可以創(chuàng)建新工程模板,先放結(jié)果圖:

那具體是怎么做的呢?

1、Unity創(chuàng)建工程時的離線Project模板是以文件的形式存放在Unity安裝目錄的。

還有一部分Project模板是在線模板,聯(lián)網(wǎng)時可以刷新出來并且下載使用,大智還沒有研究是否可以從在線模板入手,有知道的童鞋可以評論私信交流~

路徑如下(不同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

也可以點(diǎn)擊Unity Hub中已經(jīng)安裝的Unity菜單,找到安裝位置,如下圖:

2、在這個文件夾下你能看到一些tgz格式的壓縮文件:

3、在windows上可以下載7-zip來編輯這些壓縮文件。mac可以直接用命令行解壓縮,請自行搜索。

4、現(xiàn)在可以嘗試基于一個已有模板tgz來創(chuàng)建咱們自己的模板。核心是要修改里面的package.json和ProjectData~文件夾中的內(nèi)容。

5、大智這基于com.unity.template.universal-7.5.2.tgz,修改里面的package.json文件如下:

{
  "name": "com.unity.template.universal.hongliu",
  "displayName": "空白URP",
  ......其他不變
}

具體修改內(nèi)容對比如下圖:

如果要用中文的展示名稱的話,記得把package.json的編碼改成UTF8的,否則會顯示亂碼。

6、ProjectData目錄中的文件,實(shí)際上就是一個Unity項目的所有文件,你先創(chuàng)建一個工程把所有東西都配置好,然后只把Asset、ProjectSettings、Packages目錄放到ProjectData目錄里就行了。比如現(xiàn)在我想設(shè)置一個URP模板,但是不要里面的示例資源,就可以把ProjectData~\Assets\目錄下除了Settings文件夾全部刪掉。因為Settings中有URP Asset配置,需要保留。

刪除的文件同時也把meta文件刪掉,保留的文件注意別把meta文件刪了,否則可能會丟失關(guān)聯(lián)。

7、將所有文件重新壓回tgz文件。mac請自行搜索命令。Windows上使用7-zip操作如下。

  • 先把整個目錄壓縮為一個tar文件
  • 在tar文件上右鍵,壓縮的時候壓縮格式選擇gzip
  • 壓縮完擴(kuò)展名是tar.gz,可以手動修改下改成tgz

8、修改下壓好的tgz的文件名,否則會把原來的模板給覆蓋掉,然后復(fù)制回\ProjectTemplates目錄。

9、打開UnityHub,使用對應(yīng)版本Unity創(chuàng)建工程時就能看到創(chuàng)建新項目模板了!

如果沒顯示出來需要重啟下UnityHub。

最后還有一點(diǎn)需要注意的是:注意備份你的模板,因為卸載Unity版本的時候模板會被一起卸載掉。
安裝了新版本Unity編輯器之后,也需要把原來的模板復(fù)制到新編輯器\ProjectTemplates目錄中一份。


呼~ 沒講清楚的地方歡迎評論私信,咱們一起探索。

我是大智(??:zhz11235),你的技術(shù)探路者,咱們下次見!

別走!點(diǎn)贊,收藏哦!

好,你可以走了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容