PartyOption
Zusätzliche Optionen, die festgelegt werden können, um die Funktionalität der Partybibliothek zu optimieren.
Syntax
enum class PartyOption : uint32_t
{
LocalUdpSocketBindAddress = 0,
LocalDeviceDirectPeerConnectivityOptionsMask = 1,
TextChatFilterLevel = 2,
LocalDeviceMaxDirectPeerConnections = 3,
RegionUpdateConfiguration = 4,
RegionQualityMeasurementConfiguration = 5,
}
Konstanten
Konstante | Beschreibung |
---|---|
LocalUdpSocketBindAddress | Eine Option, mit der konfiguriert wird, wie die Parteibibliothek an einen UDP-Socket gebunden wird. Um diese Option zu überschreiben, rufen Sie PartyManager::SetOption auf und übergeben null für den object-Parameter, diesen Wert für den Optionsparameter und einen optionalen Zeiger auf eine PartyLocalUdpSocketBindAddressConfiguration-Struktur für den Wert. Wenn ein Null-PartyLocalUdpSocketBindAddressConfiguration-Zeiger angegeben wird, wird die Standardkonfiguration wiederhergestellt. Rufen Sie zum Abfragen dieser Option PartyManager::GetOption auf, und übergeben Sie NULL für den Object-Parameter, diesen Wert für den Optionsparameter und einen Zeiger auf eine Ausgabestruktur von PartyLocalUdpSocketBindAddressConfiguration für den Wert. Es ist sicher und empfiehlt sich, diese Option vor dem Initialisieren der Parteibibliothek zu überschreiben oder abzufragen. Das Überschreiben der lokalen UDP-Socketbindungsadressenkonfiguration wird wirksam, wenn die Partybibliothek das nächste Mal initialisiert wird. Die Socketbindung der Partybibliothek, die bereits initialisiert wurde, wird nicht geändert. Ebenso ruft die Abfrage die Konfiguration ab, die bei der Initialisierung der nächsten Parteibibliothek verwendet wird, nicht den Wert, der aktiv verwendet wird, wenn er bereits initialisiert wurde. |
LocalDeviceDirectPeerConnectivityOptionsMask | Eine Option zum Einschränken der zulässigen direkten Peerkonnektivität zwischen dem lokalen Gerät und anderen Geräten in Netzwerken, die den Versuch solcher Verbindungen ermöglichen. Wenn ein anfänglicher lokaler Benutzer erfolgreich in einem Netzwerk authentifiziert wird, wobei das Feld PartyNetworkConfiguration::d irectPeerConnectivityOptions auf einen anderen Wert als PartyDirectPeerConnectivityOptions::None festgelegt ist, oder wenn sich ein Remotegerät bei einem solchen Netzwerk authentifiziert, kann eine direkte Peerkonnektivität zwischen diesem lokalen Gerät und den Remotegeräten im Netzwerk versucht werden. Die von dieser Option konfigurierten Flags können verwendet werden, um die spezifischen Arten von Remotegeräten, die das lokale Gerät in diese Versuche einbeziehen dürfen, weiter einzuschränken. Alle Flags werden mithilfe einer bitweisen AND-Operation ausgewertet. Das heißt, ein bestimmtes Flag ist tatsächlich nur für das Gerätepaar eines bestimmten Netzwerks wirksam, wenn es an drei Stellen aktiviert ist: der PartyNetworkConfiguration-Struktur des Netzwerks und den jeweiligen lokalen Maskenoptionen beider Geräte. Selbst wenn das Netzwerk der Partei direkte Peerkonnektivität in der relevanten Form zulässt, kann jedes Gerät einseitig die OFFENLEGUNG der IP-Adresse und direkte Verbindungsversuche zwischen ihnen deaktivieren, indem das Flag beim Außerkraftsetzung dieser Option nicht aktiviert wird. Direkte Peerkonnektivität wird für die Windows-, Microsoft Game Core-, PlayStation-®, Switch-, Linux- und macOS-Versionen der Bibliothek unterstützt. Auf diesen Plattformen ist der Standardwert für die lokale Gerätemaske, wenn noch nicht festgelegt ist PartyDirectPeerConnectivityOptions::AnyPlatformType | PartyDirectPeerConnectivityOptions::AnyEntityLoginProvider | PartyDirectPeerConnectivityOptions::OnlyServers . Dies bedeutet, dass solche Geräte keine direkte Peerkonnektivität einschränken, die von der PartyNetworkConfiguration eines Netzwerks zugelassen wird, bis sie explizit überschrieben wird, um weniger freizügig zu sein. Für alle anderen Versionen der Bibliothek ist PartyDirectPeerConnectivityOptions::None der Standardwert für die lokale Gerätemaske und kann nicht geändert werden. Der Versuch, ihn über PartyManager::SetOption zu ändern, schlägt fehl. Dies bedeutet, dass solche Geräte niemals eine direkte Peerkonnektivität versuchen. Um diese Option zu überschreiben, rufen Sie PartyManager::SetOption auf, und übergeben Sie NULL für den Object-Parameter, diesen Wert für den Optionsparameter und einen optionalen Zeiger auf eine PartyDirectPeerConnectivityOptions-Variable , die alle gewünschten Optionsflags enthält. Wenn ein Null-PartyDirectPeerConnectivityOptions-Zeiger angegeben wird, werden die Standardoptionen wiederhergestellt. Rufen Sie zum Abfragen dieser Option PartyManager::GetOption auf, und übergeben Sie NULL für den Object-Parameter, diesen Wert für den Optionsparameter und einen Zeiger auf eine PartyDirectPeerConnectivityOptions-Variable , in die die aktuell konfigurierten Optionsflags geschrieben werden sollen. Es wird empfohlen, diese Option zu überschreiben oder abzufragen, wenn keine Verbindung mit einem Netzwerk hergestellt wird. Der konfigurierte Wert wird wirksam, wenn dieses Gerät einen anfänglichen Benutzer das nächste Mal in einem neuen Netzwerk authentifiziert. Die Einstellungen, die bereits für die Teilnahme an vorhandenen Netzwerken verwendet werden, werden nicht geändert. Ebenso ruft die Abfrage den aktuell konfigurierten Wert ab, der mit zukünftigen Netzwerken verwendet wird, und nicht die Werte, die mit vorhandenen Netzwerken verwendet werden. Es ist auch sicher, diese Option vor dem Initialisieren der Parteibibliothek zu überschreiben oder abzufragen. |
TextChatFilterLevel | Eine Option zum Optimieren der Ebene, auf der Chattext gefiltert wird. Dieses Feature gilt nur für eingehenden Chattext, der als Englisch erkannt wird. Die Filterebene kann für andere Sprachen nicht geändert werden. Die Filterebene gilt für eingehenden Chattext für alle lokalen Chatsteuerelemente auf dem Client. Die Filterung muss mit PartyLocalChatControl::SetTextChatOptions für mindestens ein lokales Chat-Steuerelement aktiviert sein, damit dies auswirkungen auf den Chattext hat. Um diese Option zu überschreiben, rufen Sie PartyManager::SetOption auf, und übergeben Sie NULL für den Object-Parameter, diesen Wert für den Optionsparameter und einen optionalen Zeiger auf eine PartyTextChatFilterLevel-Variable , die die gewünschte Filterebene enthält. Wenn ein Null-PartyTextChatFilterLevel-Zeiger angegeben wird, wird die Standardebene wiederhergestellt. Rufen Sie zum Abfragen dieser Option PartyManager::GetOption auf, und übergeben Sie null für den Object-Parameter, diesen Wert für den Optionsparameter und einen Zeiger auf eine PartyTextChatFilterLevel-Variable , in die die aktuell konfigurierte Filterebene geschrieben werden soll. Es ist sicher, diese Option jederzeit zu überschreiben oder abzufragen, auch vor der Initialisierung der Parteibibliothek. Das Festlegen eines neuen Werts wird sofort wirksam. |
LocalDeviceMaxDirectPeerConnections | Eine Option zum Konfigurieren der maximalen Anzahl von direkten Peerverbindungen, die dieses Gerät mit anderen Geräten herstellen möchte. Wenn ein anfänglicher lokaler Benutzer erfolgreich in einem Netzwerk authentifiziert wird, wobei das Feld PartyNetworkConfiguration::d irectPeerConnectivityOptions auf einen anderen Wert als PartyDirectPeerConnectivityOptions::None festgelegt ist, versuchen Geräte möglicherweise eine direkte Peerkonnektivität untereinander. Um einen übermäßigen Ressourcenverbrauch zu vermeiden, verhindert die Parteibibliothek intern, dass ein bestimmtes Gerät versucht, mehr direkte Peerverbindungen als dieses Maximum in allen Netzwerken herzustellen, an denen es derzeit teilnimmt. Dies wirkt sich nicht auf die Fähigkeit des Geräts aus, an großen oder mehreren Netzwerken mit zusätzlichen Remotegeräten teilzunehmen. Es definiert einfach die Anzahl der Möglichkeiten für Endpunktnachrichten und Chatdaten zwischen den Geräten, die über diese direkten Verbindungen anstelle von transparenten Cloudrelayservern übertragen werden sollen. Sie können ermitteln, ob das lokale Gerät tatsächlich eine direkte Peer-zu-Peer-Verbindung mit einem bestimmten Remotegerät in einem Netzwerk hergestellt hat, indem Sie PartyNetwork::GetDeviceConnectionType()aufrufen. Der Standardwert für diese Option ist c_maxDirectPeerConnectionsPerDevice . Bei Verwendung der Standardeinstellungen gilt der Wert jedoch nur, wenn ein lokaler Benutzer mit dem PlayFab-Entitätstyp authentifiziert wird title_player_account . Wenn Sie stattdessen einen lokalen Benutzer mit dem PlayFab-Entitätstyp mit game_server der Standardoptionskonfiguration authentifizieren, gibt es keine maximale Anzahl direkter Peerverbindungen. Um diesen Wert unabhängig vom PlayFab-Entitätstyp außer Kraft zu setzen, rufen Sie PartyManager::SetOption auf, und übergeben Sie NULL für den Objektparameter, diesen Wert für den Optionsparameter und einen optionalen Zeiger auf eine uint32_t Variable für den Wert. Wenn ein NULL-uint32_t-Zeiger angegeben wird, werden der Standardwert und das Verhalten wiederhergestellt. Rufen Sie zum Abfragen dieser Option PartyManager::GetOption auf, und übergeben Sie null für den Objektparameter, diesen Wert für den Optionsparameter und einen Zeiger auf eine uint32_t Variable, in die der aktuell konfigurierte Wert geschrieben werden soll. Es ist sicher, diese Option jederzeit zu überschreiben oder abzufragen, auch vor der Initialisierung der Parteibibliothek. Das Festlegen eines neuen Werts wird für alle Netzwerke wirksam, die nach dem Ändern des Werts verknüpft sind. |
RegionUpdateConfiguration | Eine Option, die verwendet wird, um zu konfigurieren, wann die Parteibibliothek automatische Aktualisierungen zur Regionsermittlung und Zur Messung der Verbindungsqualität durchführt. Um diese Option außer Kraft zu setzen, rufen Sie PartyManager::SetOption auf, und übergeben Sie NULL für den Object-Parameter, diesen Wert für den Optionsparameter und einen optionalen Zeiger auf eine PartyRegionUpdateConfiguration-Struktur für den Wert. Wenn ein Null-PartyRegionUpdateConfiguration-Zeiger angegeben wird, wird die Standardkonfiguration wiederhergestellt. Rufen Sie zum Abfragen dieser Option PartyManager::GetOption auf, und übergeben Sie null für den Object-Parameter, diesen Wert für den Optionsparameter und einen Zeiger auf eine Ausgabestruktur partyRegionUpdateConfiguration für den Wert. Es ist sicher, diese Option jederzeit zu überschreiben oder abzufragen, auch vor der Initialisierung der Parteibibliothek. Das Überschreiben der Regionsupdatekonfiguration wird sofort wirksam. |
RegionQualityMeasurementConfiguration | Eine Option, die für eine differenzierte Kontrolle des Verhaltens der Qualitätsmessung der Partybibliothek verwendet wird. Um diese Option zu überschreiben, rufen Sie PartyManager::SetOption auf und übergeben NULL für den Object-Parameter, diesen Wert für den Optionsparameter und einen optionalen Zeiger auf eine PartyRegionQualityMeasurementConfiguration-Struktur für den Wert. Wenn ein Null-PartyRegionQualityMeasurementConfiguration-Zeiger angegeben wird, wird die Standardkonfiguration wiederhergestellt. Um diese Option abzufragen, rufen Sie PartyManager::GetOption auf, und übergeben Sie NULL für den Objektparameter, diesen Wert für den Optionsparameter und einen Zeiger auf eine PartyRegionQualityMeasurementConfiguration-Ausgabestruktur für den Wert. Es ist sicher, diese Option jederzeit zu überschreiben oder abzufragen, auch vor der Initialisierung der Parteibibliothek. Das Überschreiben der Konfiguration der Regionsqualitätsmessung wird mit dem nächsten Regionsupdate wirksam. |
Anforderungen
Kopfball: Party.h
Weitere Informationen
Party-Mitglieder
PartyManager::SetOption
PartyManager::GetOption
PartyLocalUdpSocketBindAddressConfiguration
PartyNetworkConfiguration
PartyDirectPeerConnectivityOptions
PartyRegionUpdateConfiguration
PartyRegionQualityMeasurementConfiguration