PartyOption

可设置用于微调群库功能的其他选项。

语法

enum class PartyOption  : uint32_t  
{  
    LocalUdpSocketBindAddress = 0,  
    LocalDeviceDirectPeerConnectivityOptionsMask = 1,  
    TextChatFilterLevel = 2,  
    LocalDeviceMaxDirectPeerConnections = 3,  
    RegionUpdateConfiguration = 4,  
    RegionQualityMeasurementConfiguration = 5,  
}  

常量

常量 说明
LocalUdpSocketBindAddress 用于配置群库如何绑定到 UDP 套接字的选项。

若要替代此选项,请调用 PartyManager::SetOption 传递对象参数的 null、选项参数的此值,以及该值 PartyLocalUdpSocketBindAddressConfiguration 结构的可选指针。 如果提供了 null PartyLocalUdpSocketBindAddressConfiguration 指针,则会还原默认配置。

若要查询此选项,请调用 PartyManager:GetOption 传递对象参数 null、选项参数的此值,以及该值指向输出 PartyLocalUdpSocketBindAddressConfiguration 结构的指针。

此操作安全,建议在初始化群库之前替代或查询此选项。 下一次初始化群库时,重写本地 UDP 套接字绑定地址配置将生效。 它不会修改已初始化的任何群库套接字绑定。 同样,查询会检索与下一群库初始化结合使用的配置,而不是在初始化后处于主动使用中的值。
LocalDeviceDirectPeerConnectivityOptionsMask 用于限制允许本地设备与网络中(允许尝试直接对等连接的)其他设备之间此类连接的选项。

使用 PartyNetworkConfiguration::d irectPeerConnectivityOptions 字段(其值设置为除 PartyDirectPeerConnectivityOptions::None 以外)成功对初始本地用户进行身份验证加入网络时,或者当远程设备通过身份验证加入此网络时,可能尝试建立此本地设备和网络中远程设备之间的直接对等连接。 此选项配置的标志可用于进一步限制有权让本地设备参与这些尝试的特定类型的远程设备。 使用按位 AND 操作计算所有标记。 也就是说,仅在以下三处启用特定标记时,该特定标记才会对给定网络的设备对有效:网络的 PartyNetworkConfiguration 结构以及 两个 设备各自的本地掩码选项。 即使群网络允许相关表单建立直接对等连接,在替代此选项时,任一设备也可以通过不启用标记而单独选择退出 IP 地址披露以及二者间的直接连接尝试。

库的 Windows、Microsoft Game Core、PlayStation®、Switch、Linux 和 macOS 版本支持直接对等连接。 在这些平台上,本地设备掩码在未设置时的默认值为 PartyDirectPeerConnectivityOptions::AnyPlatformType | PartyDirectPeerConnectivityOptions::AnyEntityLoginProvider | PartyDirectPeerConnectivityOptions::OnlyServers。 这意味着此类设备不会限制网络的 PartyNetworkConfiguration 允许的任何直接对等连接,除非其被显式替代而加强限制。 对于库的所有其他版本,本地设备掩码的默认值为 PartyDirectPeerConnectivityOptions::None 且无法更改;通过 PartyManager::SetOption 进行的更改尝试将会失败。 这意味着此类设备永远不会尝试直接对等连接。

要替代此选项,请调用 PartyManager::SetOption 传递对象参数的 null、选项参数的此值以及包含所有所需选项标记的 PartyDirectPeerConnectivityOptions 变量的可选指针。 如果提供了 null PartyDirectPeerConnectivityOptions 指针,则会还原默认选项。

要查询此选项,请调用 PartyManager::GetOption 传递对象参数的 null、选项参数的此值以及指向 PartyDirectPeerConnectivityOptions 变量(应向其中写入当前已配置的选项标记)的指针。

建议在未连接到任何网络时替代或查询此选项。 此设备下一次向新网络验证初始用户时,配置的值将生效。 这不会更改已用于参与任何现有网络的设置。 同样,查询会检索将用于未来网络的当前配置值,而不是 () 用于现有网络的值。

在初始化群库之前,替代或查询此选项也是安全的。
TextChatFilterLevel 用于微调将筛选聊天文本的级别的选项。

此功能仅适用于检测为英语的传入聊天文本。 其他语言无法更改筛选器级别。

筛选器级别将应用于客户端上所有本地聊天控件的传入聊天文本。 必须使用 PartyLocalChatControl::SetTextChatOptions 为至少一个本地聊天控件启用筛选,以便此操作对聊天文本产生效果。

要替代此选项,请调用 PartyManager::SetOption 传递对象参数的 null、选项参数的此值以及包含所需筛选器级别的 PartyTextChatFilterLevel 变量的可选指针。 如果提供了 null PartyTextChatFilterLevel 指针,则会还原默认级别。

要查询此选项,请调用 PartyManager::GetOption 传递对象参数的 null、选项参数的此值以及指向 PartyTextChatFilterLevel 变量(应向其中写入当前已配置筛选器级别)的指针。

可以随时(包括在初始化 Party 库之前)覆盖或查询此选项。 设置新值将立即生效。
LocalDeviceMaxDirectPeerConnections 用于配置此设备尝试与其他设备建立的直接对等连接的最大数量选项。

当将 PartyNetworkConfiguration::directPeerConnectivityOptions 字段设置为除 PartyDirectPeerConnectivityOptions::None 之外的值时,成功将初始本地用户身份验证为网络时,设备可能会尝试彼此之间的直接对等连接。 为了避免过度的资源消耗,Party 库将在内部防止任何给定的设备试图在其当前参与的所有网络上建立超过此最大值的直接对等连接。 这不会影响设备通过其他远程设备参与大型或多个网络的能力,它只是定义了使用这些直接连接而不是通过透明的云中继服务器在设备之间传输端点消息和聊天数据的机会数量。

可以通过调用 PartyNetwork::GetDeviceConnectionType() 来确定本地设备是否真的建立了与网络中特定远程设备的直接对等连接。

此选项的默认值为 c_maxDirectPeerConnectionsPerDevice,但在使用默认设置时,仅当使用 PlayFab 实体类型 title_player_account对本地用户进行身份验证时,该值才适用。 使用默认选项配置对 PlayFab 实体类型为 game_server 的本地用户进行身份验证时,没有直接对等连接的最大数目。

若要替代此值,而不考虑 PlayFab 实体类型,请调用 PartyManager::SetOption ,为对象参数传递 null,为 option 参数传递此值,并调用指向值uint32_t变量的可选指针。 如果提供了 null uint32_t指针,则还原默认值和行为。

若要查询此选项,请调用 PartyManager:GetOption 传递对象参数 null、选项参数的此值,以及指向当前配置值应写入的 uint32_t 变量的指针。

可以随时(包括在初始化 Party 库之前)覆盖或查询此选项。 更改值后,设置新值将对所有加入的网络生效。
RegionUpdateConfiguration 用于配置 Party 库何时执行自动区域发现和连接质量度量更新的选项。

若要替代此选项,请调用 PartyManager::SetOption 传递对象参数的 null、选项参数的此值,以及该值 PartyRegionUpdateConfiguration 结构的可选指针。 如果提供了 null PartyRegionUpdateConfiguration 指针,则会还原默认配置。

若要查询此选项,请调用 PartyManager::GetOption 传递对象参数 null、选项参数的此值,以及该值指向输出 PartyRegionUpdateConfiguration 结构的指针。

可以随时(包括在初始化 Party 库之前)覆盖或查询此选项。 重写区域更新配置将立即生效。
RegionQualityMeasurementConfiguration 用于对 Party 库区域质量度量行为进行精细控制的选项。

若要替代此选项,请调用 PartyManager::SetOption 传递对象参数的 null、选项参数的此值,以及该值 PartyRegionQualityMeasurementConfiguration 结构的可选指针。 如果提供了 null PartyRegionQualityMeasurementConfiguration 指针,则会还原默认配置。

若要查询此选项,请调用 PartyManager::GetOption 传递对象参数 null、选项参数的此值,以及该值指向输出 PartyRegionQualityMeasurementConfiguration 结构的指针。

可以随时(包括在初始化 Party 库之前)覆盖或查询此选项。 替代区域质量度量配置将在下一次区域更新后生效。

要求

标题: Party.h

另请参阅

群成员
PartyManager::SetOption
PartyManager::GetOption
PartyLocalUdpSocketBindAddressConfiguration
PartyNetworkConfiguration
PartyDirectPeerConnectivityOptions
PartyRegionUpdateConfiguration
PartyRegionQualityMeasurementConfiguration