托管ChunkDownloader的清单和资产

设置本地主机网站

Choose your operating system:

Windows

macOS

Linux

前置主题

为了理解并使用本文中的内容,请确保您已掌握以下主题:

虚幻引擎 ChunkDownloader 修补解决方案要求你将.pak文件分发到Web服务器,并且你还必须构建 清单文件(manifest file) 。这是一个文本文件,其中包含用户希望下载的所有文件列表以及每个文件的预期大小。

当修补流程开始后,清单是ChunkDownloader将下载到用户设备的第一项内容,它使用此信息逐个请求和下载每个.pak文件。预期文件大小让系统能够识别每个文件的进度。

1.必要设置

本指南使用 准备资产进行文件分块 中的项目。这是一个空白项目,使用Boris、Crunch和Khaimera的Paragon资产。按照该指南的步骤下载资产并为每项资产设置主要资产标签,然后烘焙包含其已分块数据的.pak文件。但是只要你将资产划分成.pak文件,就可以按照下节中的步骤进行操作。

2.构建清单文件

要创建清单文件,请按照以下步骤操作:

  1. 在项目的基本目录内部创建名为 PatchingDemoKey 的文件夹。在我们的示例中,该文件夹为 PatchingDemo/PatchingDemoKey

  2. 创建一个名为 BuildManifest-Windows.txt 的新文件,然后在文本编辑器中打开该文件。

    ManifestFileWindows.png

  3. 添加具有 $NUM_ENTRIES 字段的新行,将其值设置为等于你要追踪的pak文件数。在我们的示例中,此值为 3

    BuildManifest-Windows.txt

    $NUM_ENTRIES = 3

  4. 添加具有 $BUILD_ID 字段的新行,将其值设置为 PatchingDemoKey

    BuildManifest-Windows.txt

    $BUILD_ID = PatchingDemoKey

  5. /WindowsNoEditor/PatchingDemo/Content/Paks/ 中的.pak文件和名为 Windows 的子文件夹中的清单复制到 PatchingDemoKey 文件夹。

    PatchingDemoKeyFolder.png

无论何时打包你的项目或要更改可供用户使用的文件,都需要重复此流程。我们示例的最终清单文件如下所示:

BuildManifest-Windows.txt

$NUM_ENTRIES = 3
$BUILD_ID = PatchingDemoKey
pakchunk1001-WindowsNoEditor.pak    922604157   ver 1001    /Windows/pakchunk1001-WindowsNoEditor.pak
pakchunk1002-WindowsNoEditor.pak    2024330549  ver 1002    /Windows/pakchunk1002-WindowsNoEditor.pak
pakchunk1003-WindowsNoEditor.pak    1973336776  ver 1003    /Windows/pakchunk1003-WindowsNoEditor.pak

3.将文件托管到本地测试服务器

现在,你已经打包了文件,那么需要将其托管到服务器上以供您的游戏下载,并且需要告知ChunkDownloader如何找到服务器。出于演示目的,我们将设置一个简单的本地网站。

  1. 在Windows资源管理器中,打开 开始菜单(Start Menu) ,搜索 打开或关闭Windows功能(Turn Windows Features on or off) ,将其打开。

    StartMenuWindowsFeatures.png

  2. Windows功能(Windows Features) 菜单中,启用 Internet Information Services ,然后点击 确定(OK)

    WindowsInternetInformationServices.png

  3. 打开 Internet Information Services管理器(IIS管理器)(Internet Information Services Manager (IIS Manager)) ,然后启用 目录浏览(Directory Browsing)

    WindowsDirectoryBrowsing.png

  4. 在窗口左侧的 连接(Connections) 菜单中,展开 网站(Sites) 并点击 默认网站(Default Web Site)

    ConnectionsDefaultWebSite.png

  5. 默认网站主页(Default Web Site Home) 菜单中,双击 MIME类型(MIME Types)

    IISMimeTypes.png

  6. MIME类型(MIME Types) 菜单中, 点击右键 然后点击 添加(Add)

    AddMimeType.png

  7. 添加MIME类型(Add MIME Type) 窗口中,将 文件扩展名(File Name extension) 设置为 .pak ,然后将 MIME类型(MIME type) 设置为 application/octet-stream

    AddMimeType2.png

    这将确保IIS在收到请求时就可以下载文件。

    AddMimeType3.png

  8. 导航至 默认网站(Default Web Site) 文件夹。默认为 C:\inetpub\wwwroot 。创建名为 PatchingDemoCDN 的文件夹。

    DefaultWebSiteFolder.png

  9. PatchingDemoKey 文件夹复制到 PatchingDemoCDN 中。

    CopyPatchingDemoKey.png

  10. 打开你的项目的 DefaultGame.ini 文件,然后添加以下信息以定义 CDN基本URL(CDN Base URL)

    DefaultGame.ini

    [/Script/Plugins.ChunkDownloader PatchingDemoLive] +CdnBaseUrls=127.0.0.1/PatchingDemoCDN

    此URL将ChunkDownloader指向文件所在的网站。 PatchingDemoLive 限定符让你可以根据目标平台来使用不同的CDN部署配置。

我们在此示例中使用的URL仅指向我们在早前步骤中设置的本地网站。如果你要尝试连接至具有本地局域网或远程CDN的服务器,你需要提供额外的配置和安全性。

最终结果

现在,你已经将资产拆分成.pak文件,然后放到本地网站上,你可以利用虚幻引擎中的修补解决方案访问这些文件。

欢迎帮助改进虚幻引擎文档!请告诉我们该如何更好地为您服务。
填写问卷调查
取消