本文來源perforce.com,由Perforce中國授權合作伙伴——龍智翻譯整理,旨在為國內用戶提供一份實用、易懂的Unreal Engine 5+Perforce P4的中文使用指南。希望能為UE開發者、設計師和美術小伙伴們的版本控制實踐提供有力支持~
Unreal Engine 5?是一款尖端的游戲引擎,具備實時渲染功能、龐大的資產市場(Fab)和高級功能(如 Nanite 和 Lumen),使團隊能夠創建超寫實的角色和照片級逼真的數字環境。由于其打造沉浸式故事和體驗的能力,Unreal Engine(虛幻引擎)已被廣泛應用于多個行業——包括游戲、媒體與娛樂、建筑、汽車設計等。
充分發揮其全部潛力的關鍵之一,在于理解并運用版本控制,即通常所說的源代碼控制。
Perforce P4(原Helix Core)是與Unreal Engine廣泛結合使用的版本控制工具,它能夠對源代碼和二進制資產進行版本管理、自動化工作流,并通過在編輯時鎖定文件來防止沖突。Unreal Engine 提供了與 Perforce P4的集成,使團隊能夠在引擎內部無縫地對文件和資產進行版本控制。此外,Epic Games 提供的一些高級工具,如 Unreal GameSync 和 Robomerge,專為與P4配合使用而設計。
認識Unreal Engine 5.5
隨著 Unreal Engine 5.5 的發布,開發者和創作者可以使用一整套新的工具和增強功能,以提升動畫工作流程、移動端開發、虛擬制作以及其他創意項目。該版本基于 UE5 初版引入的功能進一步升級,帶來了 MetaHuman Animator 和 Lumen 等核心組件的重要更新。以下是幾項最值得關注的改進:
MetaHuman Animator 增強功能
在 Unreal Engine 5.5 中,MetaHuman Animator進行了如下更新,旨在簡化并提升動畫工作流程:
-
僅通過音頻表演即可生成高質量的面部動畫。
-
通過減少資產體積來優化MetaHuman,以滿足游戲集成的要求,同時確保質量幾乎不受影響。
移動端開發升級
UE5.5 同樣加強了對移動開發的支持,具體包括:
-
為 Mobile Forward Renderer 新增特性,以提升平臺上的視覺保真度。
-
改進了 Mobile Previewer 的內容開發體驗。
渲染更新
Unreal Engine 最新版還包含以下渲染方面的更新:
-
對 Lumen 進行性能優化,使其在硬件支持的平臺上可以以 60Hz 的速度運行。
-
引入 Megalights —— 一項新功能,允許用戶在場景中添加數百個動態投射陰影的光源,而不會影響性能。
Unreal Engine 5有何主要用途?
根據Perforce 2024 年《游戲技術現狀報告》,63%的受訪者表示團隊的首選引擎是 Unreal Engine(UE,虛幻引擎)。 雖然UE主要用于開發電子游戲,但它在動畫、虛擬制作和虛擬體驗項目中的應用也越來越廣泛。
報告顯示,在媒體與娛樂行業中,有 51% 的專業人士使用UE,相比之下,使用 Unity 的人員只有16%。UE5 的動態設計工具使團隊能夠更輕松地創建適合電視播出的圖形,這使得 UE成為了廣播、現場活動、汽車與交通、影視等行業不可或缺的工具。
此外,越來越多不同行業的團隊也開始采用 Unreal Engine,來實現各種高級可視化效果,例如:
- 數字孿生
- 產品演示
- 交互式VR培訓
- 虛擬現實
- 混合現實
- 擴展現實
- 建筑設計
- 教育培訓
盡管 Unreal Engine 5 為視覺創作提供了強大的功能,但管理這些復雜的項目需要穩健的版本管理機制,尤其是在多名團隊成員共同處理不斷變化的資產和代碼時。
為什么版本控制對UE5項目至關重要?
如果沒有集中式的版本控制,您的UE5項目將面臨以下重大風險:
- 工作成果丟失
- 版本更改沖突
- 協作瓶頸導致項目進度受阻
尤其在如今的數字化工作環境中,有效的版本控制不僅作用顯著,更是必不可少。 根據Perforce 2024年《游戲技術現狀報告》,來自各行各業69%的受訪者都使用版本控制系統,來存儲和共享源文件及美術資產。
為什么Perforce P4是UE的版本控制系統?
創建UE項目本身就有一定的挑戰性,特別是在處理大型資產時。與傳統軟件開發主要處理文本文件不同,UE項目非常依賴龐大的二進制資產,這就需要一種專門的版本控制解決方案。
這也正是Perforce P4的突出之處——P4是Epic Games 自身用于開發 Unreal Engine 的版本控制系統。Epic推薦所有的第三方開發者在使用 Unreal Engine 時使用 P4,并且 Epic 開發的一些高級工具也僅支持P4,其中包括:
-
Horde:由 Epic 構建的一組服務,用于支持開發《堡壘之夜》、Unreal Engine等的工作流程,服務包括遠程執行、構建自動化、工作室分析等。
-
Unreal Game Sync:由 Epic 開發的工具,用于將開發者的 P4 工作區與項目流同步,項目流包含所有必要的預編譯并可直接使用的自定義二進制文件。
-
Robomerge:一款自動合并分支的工具,Epic Games 使用其開發 UE5 項目和《堡壘之夜》。
如何使用UE5和UE源代碼控制Perforce P4?
如何配置 Unreal Engine 和 Perforce P4以開始創建項目?以下是分步教程。
1、安裝 Unreal Engine 5?
首先,你需要安裝 Unreal Engine。最新版本為 Unreal Engine 5.5,于 2024 年 11 月發布。詳情可登錄Epic官網了解更多。
2、下載 P4V?
要使用 P4 版本控制,需要P4 服務器。你可以下載免費版本自行搭建服務器(最多支持 5 名用戶),或者選擇 P4 Cloud 訂閱服務,在云端快速獲得私有服務器。如何下載?詳詢Perforce中國授權合作伙伴——龍智,獲取下載&安裝支持。
要連接到服務器,請下載適用于你操作系統的最新版 P4V。
安裝P4V后:
- 打開P4V,輸入服務器地址和用戶名(這些信息在安裝服務器或配置 P4 Cloud 時已創建)
- 首次連接時可能會提示你信任該服務器
- 輸入密碼后即可成功連接至服務器
如需了解更多設置信息,請參考Perforce P4初學者指南視頻教程
3、創建 Depot(倉庫)
安裝好 Unreal Engine 和 Perforce P4后,需要為項目創建一個 Depot——即你在 Perforce 服務器上用于存儲項目的主目錄。
操作步驟如下:
- 打開 P4V,點擊菜單欄 Tools > Administration ,進入 P4 Admin
- 在 P4 Admin 中切換到 Depots 選項卡
- 點擊菜單 File > New > Depot…
- 給 depot 命名(例如 “ProjectName”)注意:名稱不能包含空格,且一旦設定無法更改
- 將 Depot 類型設置為默認值 “stream”,然后點擊 OK 創建 depot
4、設置 typemap(類型映射)
在向服務器添加文件之前,你需要設置 typemap,這樣 P4 服務器才能正確處理不同類型的文件。例如,當你編輯 .uasset 或 .umap 這類二進制文件時,typemap 可以指示服務器對這些文件進行獨占鎖定,從而避免多人同時編輯造成的沖突。
此步驟只需在首次設置服務器時執行一次:
- 在 P4V 的左側 Depot 面板中右鍵任意 depot,選擇 Open Command Window Here
- 這將打開一個終端窗口,在終端中輸入命令:p4 typemap
- 此操作將在你的默認文本編輯器(通常是記事本)中打開 typemap 文件
- 大多數用戶可以直接復制粘貼 Game Engine Universal Typemap
- 保存并關閉文件。如果終端顯示 “Typemap saved”,則表示操作成功
5、創建 Mainline Stream(主線流)
Perforce Streams 可以簡化分支和合并操作,自動化開發與發布流程。雖然 Streams 功能非常強大,但建議先從一個 mainline stream 開始,后續再隨著項目的發展逐步擴展。
操作步驟如下:
- 返回 P4V(不是 P4 Admin),點擊 File > New > Stream…
- 為 stream 命名(常見的命名方式是使用簡短的項目代碼 + “_main”,例如 “ABC_main”)
- 在 Depot 字段中,選擇你剛剛為該項目創建的 streams depot
- 確保 Stream type(流類型)設置為 mainline
- 取消勾選 Create a workspace to use with this stream (稍后再做這一步)
- 取消勾選 Populate the mainline stream after it is created (稍后再做這一步)
- 稍后會設置 p4ignore 文件,但為了更加安全,可以先確保一些文件夾始終被忽略。切換到“高級”選項卡,在 Ignored 字段中添加以下內容,然后點擊“確定”:
/Saved/...
/Intermediate/...
/DerivedDataCache/...
/FileOpenOrder/...
6、創建 Workspace(工作區)
要在 P4 上處理文件,需要創建一個 workspace(工作區)。 Workspace 是本地計算機上的一個文件夾,與服務器上的文件相連。 所有用戶都將在自己的計算機上使用獨立的工作區,每個人都可以控制自己何時提交更改,以及何時獲取他人的更新。
操作步驟如下:
- 在 P4V 中點擊 Connection > New Workspace
- 給 workspace 命名(建議包含用戶名和計算機名稱,例如 “username_myPC_uniqueName”)
- 可選:修改 workspace 的根目錄(本地計算機上用于處理文件的文件夾)
- 在 Stream 字段中選擇之前創建的 stream
- 可選:查看高級選項卡中的其他選項,確認無誤后點擊 OK 創建 workspace
通常,可以點擊 workspace 根目錄并選擇 “Get Latest” 來下載服務器上的最新文件,但在當前階段,需要先添加一些項目文件。
7、設置 Ignore 文件(忽略文件)
接下來需要設置 ignore 文件。 默認情況下,P4 會嘗試對所有文件進行版本控制。 但對于游戲引擎項目,你需要讓 P4 忽略某些文件。 通過設置 ignore 文件,可以告訴 P4 哪些文件不需要被保存在版本控制系統中,例如個人設置文件或中間構建文件。
非常重要:請在填充 depot 之前完成此步驟。
操作步驟如下:
- 在添加項目文件之前,創建一個名為 .p4ignore 或 p4ignore.txt 的文件
- 將示例p4ignore 內容復制進去并保存。
8、添加項目文件?
現在,你已經配置好了版本控制環境,并排除了不必要的文件,可以開始將實際的 Unreal Engine 項目資源添加到倉庫中。
首次提交游戲引擎項目時,上傳所有文件可能需要較長時間,具體取決于網絡速度。
完成初始提交后,后續的提交只會包括自上次提交以來發生變更或新增的文件,因此通常比初次提交快很多。
現在,開始添加UE項目文件,操作步驟如下:
- 在workspace 目錄下新建一個 UE 項目,或將現有項目移動到該文件夾中
- 在 P4V 中右鍵 workspace 文件夾,選擇 Mark for Add
- 你的所有文件(不包含被忽略的文件)將被加入默認的 changelist(變更列表)。 你可以在 Pending Changelists 選項卡中查看(如果沒有看到,可在 View 菜單中打開)
- 選擇 changelist,點擊 Submit 并填寫描述性注釋。 對于大型項目,首次提交可能耗時較長,但后續提交將僅包含變更的文件。
如何與團隊一起使用UE 5和UE源代碼控制
如果你正在與團隊共同開發 UE5 項目,可以通過 P4 Admin 添加用戶并設置權限。 最簡單的方法是在 P4 Admin 的 Users & Groups 選項卡中右鍵選擇添加新用戶。
完成初始的服務器設置并添加用戶后,團隊成員即可開始協作流程。 他們需要各自創建 workspace 才能參與項目開發。 以下是他們可以遵循的操作步驟:
1、使用 P4V 連接服務器?
- 下載適用于各自操作系統的最新版 P4V
- 打開 P4V,輸入服務器地址和用戶名(在安裝服務器或設置 P4 Cloud 服務器時已創建)
- 首次連接時,系統可能會提示你信任服務器
- 輸入密碼后即可連接至服務器
2、創建 Workspace(工作區)
- 在 P4V 中點擊 Connection > New Workspace
- 給 workspace 命名(建議包含用戶名和計算機名稱,例如 “username_myPC_uniqueName”)
- 可選:修改 workspace 的本地根目錄(本地計算機上用于處理文件的文件夾)
- 在Stream 字段中選擇之前創建的 stream
- 可選:查看高級選項卡中的其他選項,確認無誤后點擊 OK 創建 workspace
- 在左側 Workspace 標簽頁中選擇 workspace 的根目錄,點擊 Get Latest 以下載所選 stream 中的所有最新文件
如何在UE5中設置源代碼控制
現在,你已經為團隊配置好了Perforce P4,接下來就可以在 Unreal Engine 中設置 Perforce 集成。
首先,返回到 Unreal Engine 5(如果尚未打開,請啟動它)。 確保你是從 workspace 文件夾中打開一個 Unreal Engine 項目,而不是從硬盤的其他位置打開。
打開 Unreal Engine 后:
- 點擊 Source Control(源代碼控制) 按鈕
- 選擇 Change Source Control Settings(更改源代碼控制設置)
- 在Provider(提供商)下拉菜單中選擇 Perforce?
- 輸入你在 P4V 中使用的服務器地址和用戶名
- 點擊下拉菜單以選擇工作區。 只要你已登錄 P4V,并且是從 workspace 文件夾中打開項目,該選項會自動填充
- 點擊 Accept Settings(接受設置)
當成功將 Perforce P4 與 UE 連接后,版本控制的圖標會改變,表示已連接成功。
如何使用Unreal編輯器(適用于設計師或美術人員)
Unreal 編輯器內置了由 Epic Games 維護的 P4 集成功能。 設計師主要使用帶有P4的 Unreal 編輯器來進行版本控制。
資產文件(如 .uasset 和 .umap 格式)是在 Unreal 編輯器中修改的二進制文件。 它們不能像文本文件那樣打開,也不能使用基于文本的合并工具進行合并。
當你想要編輯某個資源時,只需在 Unreal Engine 的內容瀏覽器中點擊它,就會看到一個 Check Out(簽出)的選項。 P4的typemap 設置會確保你在執行此操作時自動鎖定該文件。
完成對鎖定文件的編輯后,你可以選擇 Check In(簽入)/ Submit(提交)文件,這會將變更上傳至服務器,并釋放對文件的鎖定。 或者,如果你決定不保留所做的更改,可以右鍵點擊文件并選擇 Revert(撤銷),即可將文件恢復到簽出前的狀態,并釋放文件鎖,以便其他人可以進行編輯。
你甚至可以直接在Unreal Engine中查看文件的歷史變更記錄,并直觀地對比不同版本之間的差異。
現在,你已經了解了如何將UE5與源代碼控制結合使用,不妨現在就開始使用 P4 進行 Unreal Engine 開發吧!
Perforce中國授權合作伙伴——龍智提供 Perforce P4 的全方位服務,包括產品咨詢與演示、本地化試用、安裝部署、技術支持、定制配置和團隊培訓等。 我們致力于幫助開發團隊快速上手P4,讓版本管理更輕松、更順暢。
官網:www.shdsd.com
電話:400-666-7732
郵箱:marketing@shdsd.com