Bot releases are visible (Hide)
Published by FLY1NGSQU1RR3L over 2 years ago
About this document
We have organized this document into the following sections.
- Release Notes Errata [late changes/additions submitted 1-7 days before GA]
- What’s new
- Breaking changes
- Issues fixed in this release
- Known issues in this release
- Development environment setup
Topics highlighted in this section were added in close proximity to or after the general availability (GA) release date
(Breaking Change - Added 2022.06.07)
Direct3D 12 | DirectX header convergence across PC and Xbox
This article modifies the guidance provided in the What's New article of the same name "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.
- Note: If PC headers were previously being included in Xbox One and Xbox Series X|S toolchains to gain access to additional debug layer options that were not previously available in the console-specific headers, you may need to remove those includes (d3dcommon.h from the Windows Kit for instance), since those defines now exist within the headers update headers. Failure to do so may result in duplicate guid\interface defines.
(Known Issue – Added 2022.06.08)
Input | Minimum value required for manual title control of GameInput work queue (CreateDispatcher)
IGameInputDispatcher::Dispatch will not complete any work, when passing a value of 0 for the quotaInMicroseconds parameter per the API documentation. To work around this, pass a value of at least 100 us. This regression will be fixed in an upcoming QFE release.
([Known Issue] – Added [2022.06.10])
<game configversion=”1”>
Developer Tools | PC projects that utilize Xbox Live, XStore and/or XUser must useThe June 2022 GDK allows developers to rapidly iterate on their games on PC without requiring registration of their game, therefore for titles using this GDK or newer that use one or more of the following features:
- Xbox Live
- XGameSave
- XStore
- XUser
It is strongly recommended to update to <game configversion="1"> in the Microsoftgame.config, which will require setting a Title ID and MSAAppId. Please see MicrosoftGame.config reference for more information.
Without this MicrosoftGame.config setting, launching these titles by Visual Studio Run/F5 or double-clicking on the exe will result the following error:
E_GAMEUSER_NO_PACKAGE_IDENTITY
APIs in the areas listed above can also fail with various error codes due to the missing package identity.
An alternate workaround (for remaining at <game configversion=”0”>) is to register and launch the build using the
wdapp
command line tool, as in the following example:
c:\temp> wdapp register Gaming.Desktop.x64\Debug
Game registered as an Application, if game specific OS features are needed, run as an Administrator to register as a Game.
Registered 41336MicrosoftATG.InGameStoreXS_2021.6.10.0_x64__dspnxghe87tn0
1336MicrosoftATG.InGameStoreXS_dspnxghe87tn0!Game
Copied temporary generated AppXManifest.xml file to C:\Users\user\AppData\Local\Temp\41336MicrosoftATG.InGameStoreXS_2021.6.10.0_x64__dspnxghe87tn0_AppXManifest.xml
The operation completed successfully.
c:\temp> wdapp launch 41336MicrosoftATG.InGameStoreXS_dspnxghe87tn0!Game
Application launched successfully.
Once launched, the title can be debugged by using the “Attach to process” feature of Visual Studio. If the title requires debugging as it is launching, a DebugBreak() call can be added to prompt for a debugger to be attached at that location. Please note that depending on the configuration of the PC, this may require adding the following registry key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug – add a DWORD named Auto with value of 1.
- Note the
wdapp register
step is the operation that will make the title show up in the Start menu, which has been changed to not be done as part of Visual Studio deploy/F5—the same behaviour as generic win32 projects.This does not apply to console workflows, and is also not necessary for correct functioning of packaged builds, including builds installed from the Xbox App/Microsoft Store.
([Known Issue] – Added [2022.06.15])
[Development Tools] | [PC Game Pass titles may generate pop-up error message (E_FAIL) when attempting to sign in]
One of the newest features to improve the game launch experience for both developers and players, is the PC Bootstrapper.
Bootstrapper has a dependency on the Gaming RunTime Service (GRTS) that is distributed automatically to all Windows 10/11 PCs.
If GRTS is out of date on the development PC, it can generate an error (E_FAIL) when attempting to sign in.
To make sure you have the latest version of Gaming Services on your PC:
- Verify your Windows 10/11 developer environment is set to RETAIL mode and not in a developer sandbox.
- Close all other games and apps.
- Use this link to go to the Microsoft Store page for Microsoft Gaming Services (and select “More details” to expand the Store page if needed): https://www.microsoft.com/store/productId/9MWPM2CQNLHN
- Ensure it is current and does not tell you it needs updating.
- Also, go to the Library view in the Microsoft Store app to update all apps and components.
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
System
Networking
Developer tools
Documentation
Samples
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.
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.
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:
"PlayStation" is a registered trademark or trademark of Sony Interactive Entertainment Inc.
Please visit the PlayFab Multiplayer online documentation for links and more information.
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.
Uninstall the October 2021 Visual Studio 2022 .vsix files before installing the June 2022 GDK
This note was included in the March 2022 GDK, but it is important enough to highlight again for June 2022
If you manually installed the Visual Studio 2022 .vsix files that shipped alongside the October 2021 GDK, uninstall those files before you install the June 2022 GDK. If you do not do this, you will get debugging and deployment failures when you use Visual Studio 2022.
- Use the following command-line example to uninstall the October 2021 GDK .vsix files. **NOTE: **This command might vary, depending on which edition of Visual Studio 2022 is installed and which .vsix files were initially installed.
- If the June 2022 GDK was installed prior to uninstalling the October 2021 GDK .vsix files, repair the June 2022 GDK after uninstalling the October 2021 .vsix files to get back into a working state.
[Command-line example]:
vsixinstaller /skuName:Enterprise /skuVersion:17.1 /appIdName:VS /appIdInstallPath:"C:\Program Files\Microsoft Visual Studio\2022\Enterprise" /uninstall:Microsoft.Gaming.GDKX.PC.v143.211004 /uninstall:Microsoft.Gaming.GDKX.PC.v143.Templates /uninstall:Microsoft.Gaming.GDKX.PC /uninstall:Microsoft.Gaming.GDKX.Xbox.v143.211004 /uninstall:Microsoft.Gaming.GDKX.Xbox.v143.Templates /uninstall:Microsoft.Gaming.GDKX.Xbox
Multiplayer | XGameRuntimeUninitialize
Calling XGameRuntimeUninitialize now releases objects that were incorrectly causing a warning about active objects.
XSAPI | Fixed Xbox Title Presence API returning “Unknown”
In the June 2022 GDK, we have fixed an issue that caused XblPresenceAddTitlePresenceChangedHandler events to show XblPresenceTitleState::Unknown instead of the correct title state.
XSAPI | Fixed a Multiplayer Activity requests issue
In the June 2022 GDK, we have fixed an issue that caused multiple Multiplayer Activity requests to be ignored. This applies to requests that were sent within the same second.
Packaging and installation | XPackageUninstallPackage API added
Games can now directly control what is locally installed as packages by using the XPackageUninstallPackage API. TIt manages overall storage impact in-game, without forcing players to leave the game to manage storage. When you uninstall packages by using this API, we recommend that games provide a notification to the player.
Packaging and installation | Added XPackage API support for DLC ratings
- Prior to the June 2022 GDK, age-restrictions were only enforced against the base package.
- Starting with the June 2022 GDK and later, these same restrictions are enforced when you mount new downloadable content (DLC).
- Using the new XPackageMountWithUIAsync function, the platform automatically checks the restrictions on the DLC. This function then compares that information to the family settings on the console and the ages of the players who are signed in.Platform-owned parental consent UI appears, if necessary.
- Note that if the parental consent prompt is denied by the parent, a mounting failure occurs and should be handled as such.
To properly support parental controls on DLC, the XPackageMount function is now deprecated. All games that are using the June 2022 GDK and later need to update their code to use XPackageMountWithUIAsync and XPackageMountWithUIResult.
In addition, the XPackageDetails struct now has a new bool called AgeRestricted. If true, it indicates that this DLC is age-restricted for the current set of signed-in users. Parental consent UI appears when you attempt to mount this package.
Visual Studio life cycle updates
- Visual Studio 2017 (15.9) is now out of mainstream support. The June 2022 GDKX is the last release expected to support the Visual Studio 2017 IDE. Note that PlatformToolset v141 (the Visual Studio 2017 compiler) is supported through Visual Studio 2019 and Visual Studio 2022 with the appropriate components installed.
- Visual Studio 2019 (16.8) and earlier are out of mainstream support. Visual Studio 2019 (16.9) is in mainstream support through October 2022 and is supported by the June 2022 GDKX. Visual Studio 2019 (16.11) is in mainstream support until April 2029.
- Visual Studio 2022 (17.0) and Visual Studio 2022 (17.2) are supported through a Long-Term Servicing Channel.
Issue with XGameSaveFiles and user sign-out
If a game uses XGameSaveFiles and has any signed-in player sign out of that game, it will be closed. This issue will be fixed in a future release.
Updated requirements for MSAAppId and TitleId
As of the March 2022 GDKX, MicrosoftGame.config has been updated to schema version 1 (Game configVersion="1") for new titles. As part of these new schema requirements, MSAAppId and TitleId must be present if either element is specified in MicrosoftGame.config. Additionally, if AdvancedUserModel is set to false, a valid MSAAppId and TitleId must be present in MicrosoftGame.config.
Selecting the Visual Studio 2019 or Clang build tools in a Visual Studio project
The options to select either the version 142 (Visual Studio 2019) toolsets or the Clang toolsets by using the Platform Toolset property in Visual Studio is not available if the toolsets were installed by using the Individual Components section of the Visual Studio installation dialog. Selecting version 142 and Clang components from the Desktop Development with C++ workload at installation time causes the toolsets to appear properly in the Platform Toolset property.
__imp___std_init_once_complete unresolved external symbol with Visual Studio 2022 17.2
When you use the XSAPI API static C++ library with Visual Studio 2022 17.2, you might see what’s in the following error example.
This is because of a change in Microsoft STL. The workaround is to add the following code example to one of your code files.
For status on a fix for this issue, see Visual Studio Feedback.
Error example
unresolved external symbol __imp___std_init_once_begin_initialize referenced in function "void __cdecl std::call_once<class <lambda_155357a9be3d845a3d89ac4e05cd0d71(struct std::once_flag &,class <lambda_155357a9be3d845a3d89ac4e05cd0d71> &&)" (?$call_once@V<lambda_155357a9be3d845a3d89ac4e05cd0d71>@@$$V@std@@YAXAEAUonce_flag@0@$$QEAV<lambda_155357a9be3d845a3d89ac4e05cd0d71>@@@Z)
Code example
#if _MSC_VER == 1932 // Visual Studio 2022 version 17.2
#pragma comment(linker, "/alternatename:__imp___std_init_once_complete=__imp_InitOnceComplete")
#pragma comment(linker, "/alternatename:__imp___std_init_once_begin_initialize=__imp_InitOnceBeginInitialize")
#endif
Debugger property might be missing when upgrading PC GDKX projects
When you upgrade your PC projects to the June 2022 version of the GDKX, there might be cases where the debugger property is set to the Unsupported debug option.
If this occurs, you must reset the debugger property to Local Windows Debugger by using the debugging toolbar, the project property page, or by setting the DebuggerFlavor msbuild property to WindowsLocalDebugger. (Removing the DebuggerFlavor property altogether also causes Local Windows Debugger to be used.)
GDKX features might be disabled if a Visual Studio 2022 Preview has been installed
Developer computers with a version of Visual Studio 2022 from the Preview channel can result in GDKX VSIXs erroneously marked as disabled.
- If the GDKX Visual Studio extensions do not appear in the Visual Studio IDE in this scenario in Visual Studio 2019 and Visual Studio 2022, go to Extensions > Manage Extensions menu. In Visual Studio 2017, go to Tools > Extensions and Updates menu.
- The GDKX VSIX files are on the Installed tab. If any of them are marked disabled, reenable them. Restart Visual Studio to restore the GDKX features.
General
(Added June 8, 2022)
- GameInput currently supports Windows 10 build 18362 (the “Windows 10 May 2019 Update”) and later.
- GameInput is currently available for PC as part of the GDK + Gaming Runtime Services (GRTS) package.
Keyboard and mouse support
Keyboard and mouse support is currently in Beta release quality. The primary known issues are as follows.
- The following members of the GameInputDeviceInfo structure are currently populated with hard-coded values that might not match the device’s actual properties.
- keyboardInfo.
- mouseInfo
- The codePoint, virtualKey, and isDeadKey values that are returned in the GameInputKeyState structure might not always be accurate.
- Keyboard state is currently hard-coded to the US English keyboard layout.
- Aggregate keyboard device support is not available. Keyboard state must be individually processed from each keyboard.
Game controller device support
All Xbox One, Xbox 360, and Human Interface Device (HID) game controllers are supported, with the following exceptions.
- Xbox 360 devices are only supported on PC, on Windows 10 build 19041 (the “Windows 10 May 2020 Update”), and later.
HIDs are only supported on PC. Most HIDs only provide “controller” (raw axis and button) state. Support for fixed-format state like Gamepad or RacingWheel is limited to the following:
- The original version of the Sony DualSense™ Wireless Controller (but not the latest version)
- The Nintendo Switch™ Pro controller, but only when it’s operating in Bluetooth mode
- Several popular racing wheels
*“DualSense” is a registered trademark or trademark of Sony Interactive Entertainment LLC.* *“Nintendo Switch” is registered trademark or trademark of Nintendo of America Inc.*
Missing features and APIs
Several GameInput APIs aren’t yet implemented, or have limited functionality, as detailed as follows.
IGameInput
- The GetNextReading and GetPreviousReading APIs require a valid IGameInputDevice filter to be provided that matches the device that the reference reading is from. Support for iterating through readings across all devices (by passing null for the device filter) will be added in a future update.
- The following functions are currently not implemented and will be added in a future update.
- GetTemporalReading
- RegisterReadingCallback
- RegisterGuideButtonCallback
- RegisterKeyboardLayoutCallback
- CreateAggregateDevice
- FindDeviceFromObject
- FindDeviceFromPlatformHandle
- FindDeviceFromPlatformString
- EnableOemDeviceSupport
- SetFocusPolicy
- On Xbox, the focus policy is currently always set to GameInputDisableBackgroundInput. Only the application in focus receives input.
- On PC, the focus policy is currently always set to GameInputDefaultFocusPolicy. Applications always receive input, even when not in focus.
IGameInputReading
- IGameInputReading instances currently do not have reference identity, contrary to what the API documentation indicates. This means that IGameInputReading pointers obtained via separate API calls cannot be compared for equality to determine if both API calls refer to the same reading. Instead, get the input state from both readings and compare that instead.
- The value returned by the GetSequenceNumber function is currently not valid (for all input kinds).
IGameInputDevice
- Force Feedback is currently only supported for Xbox One accessories (on both Xbox and PC). On PC, the device must be running in Xbox One mode, not HID mode.
- Vibration Feedback is currently only supported for Xbox One gamepads, Xbox 360 gamepads, and the Sony Dualsense™ Wireless Controller.
- The IsForceFeedbackMotorPoweredOn function always returns “true”, regardless of the actual hardware state, unless the provided motor index is invalid.
- The CreateRawDeviceReport function can only be used to create reports of the GameInputRawOutputReport kind.
- The SendRawDeviceOutput function can only be used on Xbox to send these reports to Xbox One accessories.
- The following functions are currently not implemented and will be added in a future update:
- GetBatteryState
- SetHapticMotorState
- PowerOff
- GetRawDeviceFeature
- SetRawDeviceFeature
- ** ExecuteRawDeviceIoControl**
- AcquireExclusiveRawDeviceAccess
- ReleaseExclusiveRawDeviceAccess
The following members of the GameInputDeviceInfo structure are currently not populated with valid values. These either contain zero or a null pointer:
- revisionNumber
- interfaceNumber
- collectionNumber
- deviceRootId
- inputReportCount
- outputReportCount
- featureReportCount
- deviceStringCount
- deviceDescriptorSize
- inputReportInfo
- outputReportInfo
- featureReportInfo
- controllerAxisInfo
- controllerButtonInfo
- controllerSwitchInfo
- hapticFeedbackMotorInfo
- displayName
- deviceStrings
- deviceDescriptorData
.NET Core updates can block GDKX installation
.NET Core updates that are delivered through Microsoft Update can block GDKX installation. To resolve this issue, update your Visual Studio instance or uninstall the workloads that contain Microsoft.NET.Core.Component.SDK.2.1 through the Visual Studio Installer and then retry (un)installing the GDKX.
Published by FLY1NGSQU1RR3L over 2 years ago
(2022.05.12 @ 0411PDT - The VS2022 support files for this release have been added as attached binaries).
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
Developer Tools | [Visual Studio] Fixed an issue that caused GDK VSIX packages to be orphaned in Visual Studio on the PC when using the Change and choosing the Uninstall or Repair option button in Programs and Features.
Networking | [XSAPI] Fixed an issue where a web socket handle didn't close under certain circumstances, causing a time out on suspension.
Networking | [XSAPI] Fixed an issue that caused multiple Multiplayer Activity requests that were sent within the same second to be ignored.
Xbox (available in GDKX also known as the GDK w/ Xbox Extensions)
[6] Fix(es) in this release: Platform (memory manager): [1], Developer Tools (XBOM): [1], Graphics (PIX, DX12): [3], Audio: [1]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private/NDA-only Xbox Developer Forums. See ReadMe for more details about the GDKX.
Issue #18 | [Developer Tools] Visual Studio 2019 Lifecycle update
Issue #17 | [Developer Tools] GDK Visual Studio 2022 Preview Support - See issue for resolution / use the attached VS2022 Support Assets.
Issue #11 | [System] GameInput on PC isn’t yet available
Workarounds Available
Issue #12 | [Developer Tools] Newly added MicrosoftGame.config files don’t appear in Xbox Gaming Project Control
Issue #8 | [Developer Tools] Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
This release is a synchronized w/ the GDKX and does not contain any specific new features or fixes for PC platform development.
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[3] Additional fixes in this release: Graphics: [1], PIX: [1], Xbox One Manager (HEVC Codec Update): [1]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private Xbox Developer Forums. See ReadMe for more details about the GDKX.
Workarounds Available
Issue #7 | .NET Core 2.1 updates delivered through Microsoft Update can block GDK installation
Issue #8 | Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Important Note: The LATEST release is not always the version tagged by GitHub in this section. Look for the latest Month/Year for latest version or see the ReadMe in the Main Branch.
Common Components Between Windows 10/11 & Xbox Consoles
This release is a synchronized w/ the GDKX and does not contain any specific new features or fixes for PC platform development.
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[2] Additional fixes in this release: PIX: [1], Graphics (Shader Compiler): [1]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private Xbox Developer Forums. See ReadMe for more details about the GDKX.
Workarounds Available
Issue #7 | .NET Core 2.1 updates delivered through Microsoft Update can block GDK installation
Issue #8 | Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
Development Tools | [MakePkg] MakePkg, in GDK Tools, has been updated to ensure that package metadata uses the latest improvements to the PC installation process. If a title releases an update on PC without using
the newest version of MakePkg, and the title has more than about 20,000 files, PC gamers will see a slight increase in the time it takes to get and apply that update.
Development Tools | [Visual Studio] Fixed a crash when registering a PC title from Visual Studio when in non-admin mode if the PC was running certain preview versions of Windows 11
Networking | [XSAPI] Fixed a rare crash in Websocket::GetSharedThis where the web socket could be cleaned up before a callback was invoked
Networking | [XSAPI] Fixed a deadlock that could occur when calling XblMultiplayerSetSubscriptionsEnabled.
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[3] Additional fixes in this release: Developer Tools: [1], Platform (GameInput): [2]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private Xbox Developer Forums. See ReadMe for more details about the GDKX.
Workarounds Available
Issue #7 | .NET Core 2.1 updates delivered through Microsoft Update can block GDK installation
Issue #8 | Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
Networking | [XSAPI] This release fixes a suspension time-out during WinHttp cleanup
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[1] Fixes in this release: Platform (memory manager): [1]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private/NDA-only Xbox Developer Forums. See ReadMe for more details about the GDKX.
Issue #18 | [Developer Tools] Visual Studio 2019 Lifecycle update
Issue #17 | [Developer Tools] GDK Visual Studio 2022 Preview Support - See issue for resolution / use the attached VS2022 Support Assets.
Issue #11 | [System] GameInput on PC isn’t yet available
Workarounds Available
Issue #12 | [Developer Tools] Newly added MicrosoftGame.config files don’t appear in Xbox Gaming Project Control
Issue #8 | [Developer Tools] Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Note: this section normally only appears for major releases (Spring, Summer, and Fall) where new features are introduced. Minor updates between releases focus on fixes.
Developer Tools | [Visual Studio] Visual Studio 2022 support for GDK development is now out of Preview. All components needed to use Visual Studio 2022 with the GDK are now installed as part of GDK setup, for both console and PC. Visual Studio 2022 provides numerous benefits to game developers, including a 64-bit IDE, an improved servicing model and a more robust debugger architecture. October 2021 GDK users see Issue #17 for workaround to use VS2022.
Developer Tools (Breaking Change) | [Visual Studio] The Build Log Analyzer tool has been removed from the GDK. For alternatives for evaluating and improving MSBuild performance, see the C++ team blog post at https://devblogs.microsoft.com/cppblog/cpp-build-throughput-investigation-and-tune-up/.
Developer Tools (Breaking Change) | [Packaging] As part of a set of PC ecosystem updates, new MicrosoftGame.config requirements are now in place for new titles being created in the March 2022 GDK and beyond. These MicrosoftGame.config requirements do not impact titles porting from a previous GDK.
Platform | Flat File Install is a PC GDK install feature, which shipped in the March 2022 GDK, that helps streamline how MSIXVC files are laid out on disc after being installed. The goal of these changes is to reduce friction for developers by making the file system experience for GDK on PC more consistent across loose file and packaged workflows and to get closer to the traditional win32 file system experiences.
Documentation | Offline documentation for the March 2022 release of the GDK is installed on your development PC by the GDK Setup program. After running Setup, the Help file for the GDK (GDK.chm) is in C:\Program Files (x86)\Microsoft GDK\Documentation
Documentation | Details on PC ecosystem updates. For more information, see Overview of PC ecosystem updates.
Documentation | Details on all Submission Validator tests. For more information, see Submission Validator Messages.
Documentation | Improvements to PC install and launch information. For more information, see Utilizing Microsoft Game Development Kit tools to install and launch your PC title.
Documentation | Improvements to MicrosoftGame.config documentation. For more information, see MicrosoftGame.config.
Documentation | Improvements to Packaging documentation overviews. For more information, see Overview of packaging.
For GDK PC development on Windows 10/11
Issue #17 | [Developer Tools] GDK Visual Studio 2022 Preview Support
Networking | [XSAPI] Fixed a bug where XCurl would crash if curl_easy_perform was called without setting curl_write_callback.
Networking | [XSAPI] Fixed a bug where XCurl wouldn't correctly guard against NULL inputs at API entry points.
Networking | [XSAPI] Fixed a regression that was introduced in the October 2021 GDK where curl_read_callback was called, even when there was no data to upload.
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[36] Xbox Fixes in this release: Shader Compiler (w/ 1 Breaking Change): [7], Graphics: [13], PIX: [2], Development Tools: [14]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private/NDA-only Xbox Developer Forums. See ReadMe for more details about the GDKX.
Developer Tools | [Visual Studio] The options to select either the version 142(Visual Studio 2019) toolsets or the Clang toolsets by using the Platform Toolset property in Visual Studio isn’tavailable if the toolsets were installed by using the Individual Components section of the Visual Studio installation dialog. Selecting the version142and Clangcomponents from the Desktop Development with C++ workload at installation time causesthe toolsets to appear properly in the Platform Toolset property.
Networking PR #669 | [XSAPI] Fix Race condition in CurlProvider::CleanupAsync. If you are experiencing this XSAPI crash, please use the October 2021 GDK or the upcoming October 2021 GDK Update 4.
Issue #18 | [Developer Tools] Visual Studio 2019 Lifecycle update
Issue #11 | [System] GameInput on PC isn’t yet available
Workarounds Available (For GDK PC development on Windows 10/11)
Issue #16 | [Graphics] PIX Timing Capture file format change
Issue #15 | [Graphics] Instrumenting PC titles with PIX events requires the WinPixEventRuntime package
Issue #12 | [Developer Tools] Newly added MicrosoftGame.config files don’t appear in Xbox Gaming Project Control
Issue #8 | [Developer Tools] Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
Visual Studio | Fixed a crash when registering a PC title from Visual Studio when in non-admin mode if the PC was running certain preview versions of Windows 11.
XSAPI - Tools | Fixed an issue with XblDevAccount.exe where attempting to sign in resulted in an error.
XSAPI - Tools | The XSAPI compiler has been updated to versions 14.16.27023 and 14.27.29110 for Visual Studio 2017 and Visual Studio 2019, respectively.
XSAPI - Multiplayer | Fixed a deadlock that could occur when calling XblMultiplayerSetSubscriptionsEnabled
XSAPI - RTA | Fixed a crash in Real Time Activity connections that occurred when old subscriptions weren't cleaned up properly when they were removed from the connection.
Windows 10/11
This release was updated in response to common and Xbox-side components in the GDKX. A new GDK is released in parallel to keep the versions in sync.
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[5] Fixes in this release: Platform (memory manager): [1], PIX: [2], Networking: [1], Audio: [1]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private/NDA-only Xbox Developer Forums. See ReadMe for more details about the GDKX.
XSAPI PR #669 | [XSAPI] Fix Race condition in CurlProvider::CleanupAsync. If you are experiencing this XSAPI crash, please use the October 2021 GDK or the upcoming October 2021 GDK Update 4.
Issue #18 | [Developer Tools] Visual Studio 2019 Lifecycle update
Issue #17 | [Developer Tools] GDK Visual Studio 2022 Preview Support - See issue for resolution / use the attached VS2022 Support Assets.
Issue #11 | [System] GameInput on PC isn’t yet available
Workarounds Available
Issue #16 | [Graphics] PIX Timing Capture file format change
Issue #15 | [Graphics] Instrumenting PC titles with PIX events requires the WinPixEventRuntime package
Issue #12 | [Developer Tools] Newly added MicrosoftGame.config files don’t appear in Xbox Gaming Project Control
Issue #8 | [Developer Tools] Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
Originally published on 2022.02.04 w/ an error in some file versions, which were removed. Re-releasing packages and updating the commit history in the correct order.
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
Visual Studio 2022 | Fixed an issue that prevented debugging or attaching to a running title by using the Gaming Explorer window in Visual Studio 2022. Attempting to debug by using Gaming Explorer would result in a "cannot debug" error message
Windows 10/11
This release was updated in response to common and Xbox-side components in the GDKX. A new GDK is released in parallel to keep the versions in sync.
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[10] Fixes in this release: Platform (memory manager, XTF, XBConnect): [3], PIX: [5], GameInput: [1], Video (hardware encoder): [1]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private/NDA-only Xbox Developer Forums. See ReadMe for more details about the GDKX.
XSAPI PR #669 | [XSAPI] Fix Race condition in CurlProvider::CleanupAsync. If you are experiencing this XSAPI crash, please use the October 2021 GDK or the upcoming October 2021 GDK Update 4.
Issue #18 | [Developer Tools] Visual Studio 2019 Lifecycle update
Issue #17 | [Developer Tools] GDK Visual Studio 2022 Preview Support
Issue #11 | [System] GameInput on PC isn’t yet available
Workarounds Available
Issue #16 | [Graphics] PIX Timing Capture file format change
Issue #15 | [Graphics] Instrumenting PC titles with PIX events requires the WinPixEventRuntime package
Issue #12 | [Developer Tools] Newly added MicrosoftGame.config files don’t appear in Xbox Gaming Project Control
Issue #8 | [Developer Tools] Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
Originally published on 2022.01.14 w/ an error in some file versions, which were removed. Re-releasing packages and updating the commit history in the correct order.
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
XSAPI | Fixed a crash in XSAPI (Websocket::GetSharedThis ) and libHttpClient when cleaning up web requests handled via libHttpClient's XCurl implementation. Recommend staying on the October 2021 GDK or upgrading to the October 2021 GDK Update 4 when available.
Windows 10/11
XBLPCSandbox | Fixed a crash in XblPCSandbox when the Xbox Live registry key was missing. (XblPCSandbox
now removes the Sandbox value from the Xbox Live registry key when switching the sandbox to
RETAIL.)
Xbox (available in GDKX - GDK w/ Xbox Extensions)
[17] Fixes in this release: Platform (memory manager, run from PC): [2], Xbox Tools Framework: [1], GameInput: [1], Graphics (Frame Buffer, Swap Chain, Resource Barrier, H.264 Decoder):[4], PIX [9]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private/NDA-only Xbox Developer Forums. See ReadMe for more details about the GDKX.
XSAPI PR #669 | [XSAPI] Fix Race condition in urlProvider::CleanupAsync
Issue #18 | [Developer Tools] Visual Studio 2019 Lifecycle update
Issue #17 | [Developer Tools] GDK Visual Studio 2022 Preview Support
Issue #11 | [System] GameInput on PC isn’t yet available
Workarounds Available
Issue #16 | [Graphics] PIX Timing Capture file format change
Issue #15 | [Graphics] Instrumenting PC titles with PIX events requires the WinPixEventRuntime package
Issue #12 | [Developer Tools] Newly added MicrosoftGame.config files don’t appear in Xbox Gaming Project Control
Issue #8 | [Developer Tools] Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
Originally published on 2021.11.18 w/ an error in some file versions, which were removed. Re-releasing packages and updating the commit history in the correct order.
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Windows 10/11
This release is a synchronized w/ the GDKX and does not contain any specific new features or fixes for PC platform development.
Xbox (available in GDKX version)
[2] Fixes in this release: Platform Memory Manager: [1], Graphics FRame Buffer Allocation: [1]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private Xbox Developer Forums. See ReadMe for more details about the GDKX.
Workarounds Available
Issue #7 | .NET Core 2.1 updates delivered through Microsoft Update can block GDK installation
Issue #8 | Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L over 2 years ago
Originally published on 2021.11.08 w/ an error in some file versions which were removed. Re-releasing packages and updating the commit history in the correct order.
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Xbox (available in GDKX version)
[7] Fixes in this release: PIX: [1], Networking: [1], Xbox Shader Compiler: [5]
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private Xbox Developer Forums. See ReadMe for more details about the GDKX.
Workarounds Available
Issue #7 | .NET Core 2.1 updates delivered through Microsoft Update can block GDK installation
Issue #8 | Gaming Services may be removed or fail to install during GDK installation
Full Changelog: https://github.com/microsoft/GDK/compare/October_2021_Republish...June_2021_Update_5
Published by FLY1NGSQU1RR3L almost 3 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Common Components Between Windows 10/11 & Xbox Consoles
Networking | MsQuic
MsQuic is now supported for GDK games starting with the October 2021 GDK. Titles considering using the QUIC protocol, or that are looking for a protocol to support real-time game data traffic from client to server, are encouraged to use MsQuic. It's tailored for Game Core titles and is available on other platforms.
MsQuic provides binaries for GDK PC and console platforms that are newly available with the v1.9.0 prerelease. For more information, see Releases: microsoft/msquic (github.com)
Networking | Update PlayFab Party to version 1.7.5 for GDK console and PC
This release resolves the following issues:
- Addressed an issue where some 16 kHz microphones didn't work.
- PlayFab Party now detects and handles microphone permission changes on Windows 10.
- A memory leak has been fixed in some CreateNewNetwork failure conditions.
- An occasional crash in GetEndpointStatistics has been fixed
Developer Tools | Improved handling of long file paths in packaged workflows
This release fixes an issue that was causing long file paths (beyond MAX_PATH length) to fail when a package tried to open a file at runtime. We've also provided better warnings in cases where long files will change behavior in package creation, loose deployment, and Submission Validation.
Windows 10/11
Networking | Transport Layer Security (TLS) versioning.
Starting in the October 2021 GDK, TLS 1.3 support has been added for consoles. Windows 11 brings TLS 1.3 support to desktop PC while also deprecating TLS 1.0 and TLS 1.1.
Networking | Windows desktop behavior.
When using WinHTTP or any other Microsoft HTTP stack, such as WinInet/IXmlHttpRequest, the underlying OS version determines the TLS versions that are supported. Windows 10 supports TLS 1.0, TLS 1.1, and TLS 1.2 with some recent versions supporting TLS 1.3. Windows 11 deprecated support for TLS 1.0 and TLS 1.1 and supports only TLS 1.2 and TLS 1.3. By default, without any change to your client code, the OS sends a TLS client "hello" based on the highest supported TLS version and doesn't allow the server to negotiate a downgrade to deprecated TLS versions. This might necessitate updates or changes to your server libraries.
The XNetworkingQuerySecurityInformationForUrl[Utf16]Async functions detects the supported TLS versions by the OS and returns appropriate TLS 1.2 and TLS 1.3 flags in the XNetworkingSecurityInformation::enabledHttpSecurityProtocolFlags field given the OS capabilities and GDK version, shown as follows. If you're specifying these flags via the WinHTTP WINHTTP_OPTION_SECURE_PROTOCOLS option, the OS is restricted to the TLS versions in the following table for the purposes of TLS client "hello" versions and downgrade negotiations.
OS Version / GDK Version Pre-October 2021 GDK October 2021 GDK Windows 10 TLS 1.2 TLS 1.2 Windows 11 TLS 1.2 TLS 1.2, TLS 1.3
Xbox (available in GDKX - GDK w/ Xbox Extensions)
32 Notable Fixes in this release: Dev Tools/Environment: 11, Networking: 7, Graphics: 12, Audio: 2
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private/NDA-only Xbox Developer Forums. See ReadMe for more details about the GDKX.
Issue #18 | [Developer Tools] Visual Studio 2019 Lifecycle update
Issue #17 | [Developer Tools] GDK Visual Studio 2022 Preview Support
Issue #11 | [System] GameInput on PC isn’t yet available
Workarounds Available
Issue #16 | [Graphics] PIX Timing Capture file format change
Issue #15 | [Graphics] Instrumenting PC titles with PIX events requires the WinPixEventRuntime package
Issue #12 | [Developer Tools] Newly added MicrosoftGame.config files don’t appear in Xbox Gaming Project Control
Issue #8 | [Developer Tools] Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L about 3 years ago
Full Changelog: https://github.com/microsoft/GDK/compare/June_2021_Update_3...June_2021_Update_4
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Windows 10/11
This release was updated in response to Xbox-side changes in the GDKX. A new GDK is released in parallel to keep the versions in sync.
Xbox (available in GDKX)
10 Fixes in this release: Offline Documentation: 1, Tools: 3, Graphics: 4, Audio: 1
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private Xbox Developer Forums. See ReadMe for more details about the GDKX.
Workarounds Available
Issue #7 | .NET Core 2.1 updates delivered through Microsoft Update can block GDK installation
Issue #8 | Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L about 3 years ago
GDK development samples are now publicly available: https://github.com/microsoft/Xbox-GDK-Samples/!
GDK public documentation available here: https://aka.ms/gamedevdocs
Windows 10/11
Disabled GameInput debug asserts. Debug asserts weren't properly disabled in the GameInput APIs. This has been fixed, and these asserts no longer fire.
Xbox
Note: Changes proprietary to Xbox console hardware, graphics, memory management, storage, and security features are only documented in the GDKX release notes published to the private Xbox Developer Forums. See ReadMe for more details about the GDKX.
Workarounds Available
Issue #7 | .NET Core 2.1 updates delivered through Microsoft Update can block GDK installation
Issue #8 | Gaming Services may be removed or fail to install during GDK installation
Published by FLY1NGSQU1RR3L about 3 years ago
Looking for the GDK samples? Check out the brand new public repository here!
https://github.com/microsoft/Xbox-GDK-Samples/
Special Note: We are still optimizing our GDK and GDK documentation releases for public use. There are still many references that link into our secure program resources or references processes that are commonly known to developers inside the program, but will be unfamiliar or potentially inaccessible to those just starting with the GDK.
Thank you for feedback, patience, and collaboration to help us enable any developer, anywhere on the planet, make games for Windows PCs, Xbox consoles, and Cloud Gaming.
Issue #5 Installation Script Not Signed
Issue #3 PC Samples Also Closed
Gaming Services may be removed or fail to install during GDK installation
The GDK and GDKX installers will normally install the latest version of the Microsoft Gaming Services, but in some cases this may fail, > resulting in the Gaming Services not being present on your device. This will result in an “Ensure GamingServices is up to date” error when trying to launch or debug a Game Core PC game or dependent app, or other errors related to this being missing. This is a known bug in recent versions of Windows that has a fix and workaround described in the following article:
This can be confirmed by looking for the above errors in GamingServicesAppx .log file under %TEMP%\gdk or %TEMP%\pgdk after GDK installation.
When applying the workaround, please ensure that the sandbox for the device is set to RETAIL (xblpcsandbox.exe RETAIL) and that a retail Microsoft Account is signed in on both the Xbox app and the Microsoft Store app, otherwise the Gaming Services install may not be queued.
Published by FLY1NGSQU1RR3L about 3 years ago
Special Note: We are still optimizing our GDK and GDK documentation releases for public use. There are still many references that link into our secure program resources or references processes that are commonly known to developers inside the program, but will be unfamiliar or potentially inaccessible to those just starting with the GDK.
Thank you for feedback, patience, and collaboration to help us enable any developer, anywhere on the planet, make games for Windows PCs, Xbox consoles, and Cloud Gaming.
Published by FLY1NGSQU1RR3L over 3 years ago
Gaming Services may be removed or fail to install during GDK installation
The GDK and GDKX installers will normally install the latest version of the Microsoft Gaming Services, but in some cases this may fail, > resulting in the Gaming Services not being present on your device. This will result in an “Ensure GamingServices is up to date” error when trying to launch or debug a Game Core PC game or dependent app, or other errors related to this being missing. This is a known bug in recent versions of Windows that has a fix and workaround described in the following article:
This can be confirmed by looking for the above errors in GamingServicesAppx .log file under %TEMP%\gdk or %TEMP%\pgdk after GDK installation.
When applying the workaround, please ensure that the sandbox for the device is set to RETAIL (xblpcsandbox.exe RETAIL) and that a retail Microsoft Account is signed in on both the Xbox app and the Microsoft Store app, otherwise the Gaming Services install may not be queued.