What's new in the June 2022 Microsoft Game Development Kit

The Microsoft Game Development Kit (GDK) is a complete set of tools, APIs, extensions, and programming models that can be used across current and future Microsoft Gaming platforms and initiatives. Microsoft Game Development Kit (GDK) design and features are driven by your feedback about how you like to develop games. For a complete introduction, see Welcome to the Microsoft Game Development Kit.

In addition to many bug fixes, this release includes the following new features.

Graphics

DirectX header convergence across PC and Xbox
Public D3D12 headers will look more similar between PC and Xbox. Any previously unsupported APIs between Xbox and PC are now explicitly noted as such in the debug layer.
[!] Note: Although some functionality is now included in the header (e.g. D3D12_BARRIER_ACCESS), the driver does not yet support all of the new additions.

System

GRTS handle tracking
The June 2022 Microsoft Game Development Kit (GDK) introduces a way for developers to troubleshoot bugs involving incorrect handle usage. Most of the GRTS APIs utilize handles which correspond to the lifetime of internal objects in the platform implementation. Games often encounter problems caused by accidentally providing invalid (NULL, previously freed, etc.) handles into these APIs leading to title crashes. Developers may also inadvertently leak handles leading to excessive resource usage. Using the new XSystemHandleTrack function can be used to help diagnose and fix these issues.

DLC now supports age-restrictions
Prior to the June 2022 Microsoft Game Development Kit (GDK), age-restrictions were only getting enforced against the base package. Starting with the June 2022 Microsoft Game Development Kit (GDK), these same restrictions are enforced when mounting new DLC. Using the new XPackageMountWithUiAsync function, the platform will automatically check the restrictions on the DLC and compare that to the family settings on the console and the ages of who is signed in. If necessary, this new API will pop a dialog to collect parental consent. The platform takes care of all age-restriction requirements and enforcement. Titles that want to see what content might be age-restricted during enumeration of their DLC and prior to mounting can use the ageRestricted field newly added to the XPackageDetails structure.

Note

In order to properly support this kind of parental control, the XPackageMount function is now deprecated. All games using the June 2022 GDK and later need to update their code to use XPackageMountWithUiAsync.

Improved PC gaming experiences
The June 2022 release of the Microsoft Game Development Kit (GDK) includes several improvements to the PC gaming experience for both retail and development scenarios. New features include improved sign-in and launch experiences, a simplified user model, and a PC bootstrapper. The bootstrapper improves the retail launch experience by displaying a splash screen ahead of the title rendering, checking for game updates of a packaged build, pre-syncing cloud saves and signing in a user. Developer features include the ability to debug packages, and test your title as it will be launched by the PC bootstrapper in retail environments.

Networking

Introducing the PlayFab Multiplayer SDK
The PlayFab Multiplayer C/C++ SDK provides Matchmaking + Lobby features with real-time notifications and is now ready for general availability with cross-platform support. You can find more details as well as documentation online located here.

Also available are libraries and documentation for support of the following engines:

  • Unity support for PlayFab Multiplayer SDK available for cross-platform (Windows 10, Xbox, Nintendo Switch, PlayStation┬«4, PlayStation┬«5)
  • Unreal Engine 4 support for PlayFab Multiplayer SDK available for cross-platform (Windows 10, Xbox)

"PlayStation" is a registered trademark or trademark of Sony Interactive Entertainment Inc.

Please visit the PlayFab Multiplayer online documentation for links and more information.

Samples

  • PlayFabMultiplayerRumble
    This sample is a new version of the NetRumble sample which demonstrates the capabilities of PlayFab Multiplayer & Xbox Live integration. This sample replaces the PlayFabMatchmaking sample, which has been removed.

  • UnityRumblePlayFabMultiplayer
    This sample is a new version of the UnityRumble sample which demonstrates the capabilities of PlayFab Multiplayer & Xbox Live integration in Unity.

  • LeaderboardsEventBased
    This is a combination sample that replaces the LeaderBoards_Desktop and LeaderBoards samples. The LeaderBoards_Desktop and LeaderBoards samples have been removed.

For a complete list of samples included with the Microsoft Game Development Kit (GDK), see Microsoft Game Development Kit samples.

Release notes

To view the full release notes, see June 2022 Microsoft Game Development Kit (GDK) public release notes.