写点什么

版本控制 | 如何将 UnrealGameSync 与 Perforce Helix Core 结合使用

  • 2022-12-12
    上海
  • 本文字数:2430 字

    阅读完需:约 8 分钟

版本控制 | 如何将UnrealGameSync与Perforce Helix Core结合使用

为了帮助虚幻引擎 4 和虚幻引擎 5 的开发,Epic 公司开发了 UnrealGameSync,使其与版本控制工具 Perforce Helix Core 交互。虽然 UnrealGameSync 除了 P4V (Helix Core 客户端)之外还有许多功能,但主要用途是分发内部引擎和项目构建,它极大地简化了向团队分发虚幻编辑器的方式,帮助所有员工高效工作。阅读本篇文章,您能了解到什么是 UnrealGameSync,它的用处及优势,以及如何设置使用。


龙智作为 DevSecOps 研发安全运营一体化解决方案供应商、Perforce 授权合作伙伴,持续关注版本控制领域动态与发展,为您提供最新洞察与最佳实践参考,帮助游戏开发团队更好地进行资产管理,加强协作,提升效率。立即联系我们,了解游戏开发的最佳实践与案例。



什么是 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/....exebinary+S2w //depot/....dllbinary+S2w //depot/....libbinary+S2w //depot/....appbinary+S2w //depot/....dylibbinary+S2w //depot/....stubbinary+S2w //depot/....ipabinary //depot/....bmptext //depot/....initext //depot/....configtext //depot/....cpptext //depot/....htext //depot/....ctext //depot/....cstext //depot/....mtext //depot/....mmtext //depot/....pybinary+l //depot/....uassetbinary+l //depot/....umapbinary+l //depot/....upkbinary+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 工作室的青睐。


更多内容请关注龙智官网及公众号「龙智 DevSecOps」

发布于: 刚刚阅读数: 4
用户头像

还未添加个人签名 2021-05-18 加入

分享DevSecOps解决方案最新动态,帮助您学习与使用Atlassian, Perforce, Whitesource, Cloudbees及龙智自研产品,实现软件研发的高度协同与自动化,提高交付效率与质量,并确保开发过程可追溯、可度量。

评论

发布
暂无评论
版本控制 | 如何将UnrealGameSync与Perforce Helix Core结合使用_虚拟引擎_龙智—DevSecOps解决方案_InfoQ写作社区