版本控制 | 如何将UnrealGameSync与Perforce Helix Core结合使用
什么是UnrealGameSync?
UnrealGameSync (UGS) 是一个开发者工具,它可以使开发人员的工作区与虚幻项目流同步。它提供了一个图形化的前端,能够从Perforce Helix Core同步虚幻引擎4/虚幻引擎5项目。
UnrealGameSync有什么用?
由于项目会及时更新,UnrealGameSync让开发人员可以在同一项目上进行工作,促进协作开发环境中的代码和内容集成。
安装UnrealGameSync后,您就可以轻松地对虚幻引擎项目进行引导和迭代,而不需要承担使用同步工具带来的额外成本。
通过使用UnrealGameSync,您可以:
同步项目文件; 解决合并冲突; 使用同步编辑器编辑二进制文件; 更新版本文件; 生成项目文件; 构建虚幻引擎4/虚幻引擎5; 运行虚幻项目。
UnrealGameSync的优势
使用UnrealGameSync有很多好处,其中包括:
能够在提交变更列表后立即同步到变更列表; 为每个修改添加注释,将构建标记为好或坏; 提供有关目前正在进行的破损构建的修复通知; 安全地从本地构建进行内容更改,而无需提交未经版本管理的资产; 如果您无权访问Visual Studio ,则可以访问项目的压缩编辑器的构建。
如何设置和安装UnrealGameSync
下面将介绍如何设置和安装UnrealGameSync。
1. 下载并安装Wix
安装完成后,系统会提示您在Visual Studio中安装其他依赖项。在第一次运行解决方案文件时,请允许更新和安装这些依赖项,以便进一步构建项目。
* 注意:使用适当的Visual Studio版本很重要。
2. 下载虚幻引擎源代码
为了能够访问这些文件,您需要将您的Epic帐户与您的Github帐户相关联。或者,如果您有许可,则可以从Epic的公共Perforce Helix Core许可服务器中获取。
3. 将虚幻引擎源文件添加到一个新的主线流中
请将此工作区设置为AllWrite,以避免构建问题。
* 注意:如果您使用的是Windows系统,请确保您的工作区根路径少于50个字符,或者您的注册表中已经启用了长文件路径长度。
4. 运行Setup.bat来安装依赖项
* 注意:安装Visual Studio依赖项所需的时间可能会有所不同,这取决于虚幻引擎或UnrealGameSync是否已经在机器上构建过。
5.运行GenerateProjectFiles.bat
6.打开\Engine\Source\Programs\UnrealGameSync\UnrealGameSync.sln
您应该会收到在VS Code (ASP.NET) 中安装额外扩展的提示。
额外扩展安装完成后,运行UnrealGameSync的构建:Release – Any CPU – UnrealGameSync。这将创建一个构建:
\Engine\Source\Programs\UnrealGameSync\bin\Release\netcoreapp3.1
其中:
\Engine\Source\Programs\UnrealGameSync\Installer
您可以运行Build.bat来创建UGS的安装程序。这将创建一个msi安装程序,您可以在本地安装:
\Engine\Source\Programs\UnrealGameSync\Installer\bin\Release
7. p4ignore和类型映射
您的p4ignore可以遵循与标准的虚幻项目相同的格式。
此外,您的p4类型映射应如下所示(请将//depot自定义为//<您的流depot的名称>,例如//UE5:
Typemap:
binary+S2w //depot/....exe
binary+S2w //depot/....dll
binary+S2w //depot/....lib
binary+S2w //depot/....app
binary+S2w //depot/....dylib
binary+S2w //depot/....stub
binary+S2w //depot/....ipa
binary //depot/....bmp
text //depot/....ini
text //depot/....config
text //depot/....cpp
text //depot/....h
text //depot/....c
text //depot/....cs
text //depot/....m
text //depot/....mm
text //depot/....py
binary+l //depot/....uasset
binary+l //depot/....umap
binary+l //depot/....upk
binary+l //depot/....udk
您可以使用p4映射-i < “filename.txt” 命令为您的客户端设置类型映射。
如何使用UnrealGameSync
当您在完成安装程序后运行UnrealGameSync时,它会首先询问您这些默认值:
服务器 用户名 密码
然后,UnrealGameSync会接着询问您将要使用的虚幻项目文件的位置。
回答后,您将看到主游戏同步UI,其中列出了所有相关的变更列表。
如果尚未构建引擎,UnrealGameSync将同步签入存储库的预构建文件。通常情况下,UnrealGameSync会使用最后一个好的构建。但如果有需求,您也可以坚持同步到特定的更改列表。如果您这样做了,并且还没有构建与源代码匹配的引擎,那么只要符合先决条件,UnrealGameSync将尝试在启动编辑器之前从源代码自行构建引擎。
然而,为了充分利用您的UnrealGameSync设置,最好的做法是同时存储已完成的构建。如果你勾选“Use Unstable Build(使用不稳定构建)”,它会在里面寻找一个名为“Unstable”的文件夹。否则,它将寻找名为“Release”的文件夹。
* 注意:如果您是美术人员或设计师,您不会勾选“使用不稳定构建”。但是,如果您是开发人员并且正在处理问题,您可能需要勾选“使用不稳定的构建”来识别和修复问题。
现在您已经将构建存储在您的仓库中,可以快速选择您想同步的变更列表编号。
如果一切运行正常,并且您希望用户可以访问这个相关的构建,可以将特定的变更列表标记为好。如果该特定构建中存在破坏性bug,则标记为坏。
当用户点击Sync Now(立即同步)时,他们将收到标记为好的最高版本,然后能够从顶部面板启动各种编辑器。
开始使用:UnrealGameSync
立即开始使用Perforce Helix Core和UnrealGameSync。Perforce Helix Core被视为游戏版本控制的行业标准,并受到19家Top 20 AAA工作室的青睐。
文章来源:https://bit.ly/3P9sWDP