2022/01/01 編輯:簡單補充一下
我使用Perforce的目的是為了備份UE4專案,同時進行版本控制,也就是避免手殘不小心改壞的時候,可以還原成之前的版本,完全沒有進行多人協作的需求。如果讀者有協作的需要,或許就不適用這篇的方法,或是需要進行調整。
Unreal Engine4比較常用的版本控制有Git, Svn, Perforce等
Perforce的優點很多,最關鍵的一點是,官方是以Perforce為前提來做UE的版控,所以該有的功能都整合好了,像是Blueprint也可以直接透過內建功能做diff;缺點是使用者超過五人時要錢、Server環境不好架、教學很少等
但其實直接在Win10同時安裝Client及Server就很容易了,這樣做的缺點是幾乎沒有安全備份的意義,不過只要把Server資料夾的所有檔案,透過雲端備份服務備份到其他地方(GoogleDrive、Dropbox...等),就可以達到備份的功能了。
我自己測試過,在同一台電腦,即使把Server程式砍了,事後重新安裝並再次指定資料庫使用相同資料夾,Server可以自動識別資料夾內的資料庫,並且可以直接使用,不過還沒測過不同電腦的情況,所以我不敢打包票會不會出問題。
安裝方式如下:
首先,跟著Perforce官方教學
把Server跟Client灌到同一部Windows機器,依序安裝Server端及Client端(P4V),順序反了就會無法安裝,安裝Server端時記得選要將Server Folder設在什麼地方
跟著影片做到4:56,建立workspace時要特別注意
打好名稱設好位置之後,必須按到Advance Tab
勾選Allwrite、Modtime、Rmdr等三個項目
然後再將On submit設定為Revert unchanged files
之後才可以按下OK來創建workspace,不然未來檔案Sync時可能會造成Error
此外因為UE4不支援太長的資料夾路徑,所以Workspace記得不要放得太深
然後這個影片做到這邊就可以了,5:00之後不用管
將要版本控制的Project資料夾直接複製到workspace裡
然後用UE4開啟Project,進入SourceControl的設定,將專案連上Perforce
在資料夾中用記事本建立p4ignore檔案,檔名為「.p4ignore」
填入以下內容,可以隨個人喜好增減
Build/
Intermediate/
DerivedDataCache/
*.sln
之後在P4V選擇好Workspace,選File->Open Command Window Here
用指令列輸入下列指令,(指令最後面為檔名)
p4 set P4IGNORE=.p4ignore
需要的話可以用下列指令檢驗是否設定成功
p4 ignores
(注意:影片裡面p4ignore方法沒提到這個步驟,實測後發現不做不行)
回到P4V,對專案資料夾Add,再Commit後就可創立第一份Initial Commit
連接Perforce後,若開啟還沒有BuiltData的Level,會出現Shared Data Cache not in use, performance is impacted.的錯誤訊息,實測後DDC仍然有在正常工作,直接把產生的BuiltData檔Checkout後應該就沒問題了(不確定)
可參考這裡 https://allarsblog.com/2017/04/05/populating-perforce-with-an-unreal-engine-source-build/ 及這裡 https://www.youtube.com/watch?v=coDIWds02DE
另外,Visual Studio的部分需要裝Plugin才能使用Perforce
參考資料
Allar’s Blog
https://allarsblog.com/2017/04/05/populating-perforce-with-an-unreal-engine-source-build/
Perforce的用法
https://www.youtube.com/watch?v=ix4iaGr3kPI