Skip to main content

XPackageChunkSelector

定义用于选择一组区块的条件。

语法

成员

type
类型:XPackageChunkSelectorType
选择器的类型。 language
类型:const char*
要匹配的语言属性,例如 “en-US” 英语(美国)或 “fr-FR” 法语(法国)。 tag
类型:const char*
要匹配的标签属性,例如 BigMapSmallMap feature
类型:const char*
要匹配的功能,例如 “BigMaps”。 chunkId
类型:uint32_t
要匹配的区块编号。

备注

在安装 API 的许多操作中,会使用 XPackageChunkSelector 对象数组来选择一组区块。本节介绍将 XPackageChunkSelector 对象数组转换为一组区块 ID 时所使用的规则。每个 XPackageChunkSelector 都有一个选择器类型和一个选择器值。仅当区块上定义的所有区块说明符都与所有安装选择器匹配时,该区块才会被包含。 包中包含构成游戏的所有文件。文件可以分组为称为区块的逻辑单元。区块具有数字 ID,也可以具有零个或多个文本属性,例如语言或用户定义的标签。许多 XPackage API 对区块组进行操作。这些 API 使用 XPackageChunkSelectors 数组来描述 API 将使用哪些区块。本节介绍将 XPackageChunkSelector 对象数组转换为区块 ID 数组时所使用的规则。每个 XPackageChunkSelector 都有一个选择器类型和一个选择器值。仅当区块上定义的所有属性都与所有区块选择器匹配时,该区块才会被包含。 在下表中,区块选择器数组有两个选择器:language 和 tag。 下表是使用各种属性定义一组区块的示例。 参照上表,区块选择器数组所选择的区块使用区块属性 1、2 和 5。未被区块选择器选择的区块使用区块属性 3、4 和 6。 为了更好地理解这个区块数组示例:
  • 只有在区块上定义了说明符时,才会将区块选择器类型与区块属性进行匹配。区块 1 – 3 未定义任何标签,因此对这些区块会忽略类型为 tag 的区块选择器。
  • 区块可以为一个属性定义多个值,多个值以分号分隔。只需一个值匹配即可。
  • 无论有多少其他选择器匹配,只要有任一区块选择器类型被拒绝,该区块就会被拒绝。区块 6 被拒绝,因为 SmallMap 与 BigMap 不匹配,尽管语言匹配。
区块选择器值可以包含以分号分隔的多个值,就像区块在其布局文件中一样。此外,在数组中多次定义相同的区块选择器类型也是合法的。 如以下代码示例所示,它们是等效的:
平台可能会进一步过滤匹配的区域集。例如,你可以向区块添加 Devices 属性,使其仅在特定的主机集上可用。你选择的区块只有在同时匹配系统属性时才会被包含。如果你想安装德语,但你的包中的德语区块仅在 XBOX One X 主机上可用,则安装监视器在 XBOX One 主机上不会将此区块纳入监视范围。否则,德语的安装将无法完成。 有关 XBOX One 主机游戏所使用打包技术的信息,请参阅打包概述。有关创建 XVC 包步骤的信息,请参阅开始为 XBOX 主机打包游戏

要求

头文件: XPackage.h 支持的平台: Windows、XBOX One 系列主机和 XBOX Series 主机

概念文档

另请参阅

流式安装和智能交付
XPackage
最后修改于 2026年8月24日