Microsoft hat das plattformübergreifende C++-SDK von PlayFab, das XPlatCppSdk, in der Version vom 18. Dezember 2018 um Xbox-Unterstützung sowie eine neue Event-API erweitert. Das bislang auf Windows und Linux ausgerichtete SDK läuft damit auch auf der Konsole, und für die Verarbeitung benutzerdefinierter Ereignisse kommt eine eigene API hinzu. In den Release Notes ist die Aktualisierung zugleich als SDK Breaking Change gekennzeichnet, weil die Ordnerstruktur des XPlatCppSdk-Repositories umgestellt wurde. Wie das in die Update-Politik des Dienstes passt, zeigt der PlayFab-Digest zum Mai-Update.
Xbox als neue Zielplattform und ein umgebautes Repository
Mit dem Dezember-Update lässt sich das XPlatCppSdk nun auch für Xbox bauen. Als Einstieg nennt Microsoft den C++-Schnellstart für Xbox. Eingeführt wurde das SDK im Mai 2018 als Beta. Es kommt mit leichteren Abhängigkeiten aus als das ältere Windows-SDK, nämlich jsoncpp und curl statt cpprestsdk, und setzt durchgängig auf std::string. Schon damals war es als möglicher Nachfolger des Windows-SDK gedacht.
Der als Breaking Change ausgewiesene Umbau trifft vor allem Projekte, die das SDK über Projektreferenzen einbinden. Diese Teams müssen die Pfade in ihren vcxproj-Dateien nachziehen, weil das Repository neu sortiert wurde. Wer das SDK dagegen über das NuGet-Paket bezieht, spürt von der Pfadänderung weniger.
Die PlayFabEventApi und ihre zwei Durchsatzmodi
Neu dazu kommt die PlayFabEventApi. Sie nimmt benutzerdefinierte Ereignisse in zwei Ausprägungen entgegen. Der Heavyweight-Modus ist laut Dokumentation auf geringen Durchsatz ausgelegt (low throughput), der Lightweight-Modus auf hohen Durchsatz (high throughput). Je nach Anwendungsfall lässt sich so zwischen einer ausführlicheren Ereignisverarbeitung und einer auf Volumen getrimmten Variante wählen.
Im selben Release-Eintrag notiert Microsoft außerdem eine Anpassung am UnrealMarketplacePlugin, das jetzt Unreal Engine 4.21 unterstützt. Die PlayFab Release Notes für 2018 führen die Änderungen an XPlatCppSdk und Plugin unter dem Datumseintrag 181218. Ein vorheriges Update des XPlatCppSdk vom 4. Dezember 2018 hatte bereits den Aufbau externer Abhängigkeiten möglich gemacht und Fehler in der QoSAPI behoben.