Unity and Microsoft announce the Microsoft GDK Packages for Unity for Unity 6 beta

Targets Microsoft gaming platforms supported by the Microsoft GDK with the same configuration and code base.

Unity and Microsoft are announcing the availability of the Microsoft GDK Packages that targets Windows x64 and other platforms that are supported by the Microsoft GDK with the same configuration and code base. The package is now available in the package manager in Unity 6 beta 16 (6000.0.0b16 and up). With these packages creators can target building for Xbox and the Windows and use the same configuration and code to utilize Xbox services like User Identity, Player data, Social, Cloud Storage and more.

These packages are:

  • Microsoft GDK API (com.unity.microsoft.gdk) - contains C# wrappers to make the native APIs available in Unity script for the supported platforms.
  • Microsoft GDK Tools (com.unity.microsoft.gdk.tools) - Provides the Microsoft GDK workflow for the Windows platform.

Previously, Unity developers had to install a separate Windows GDK package that worked differently from the existing Game Core package.

Migration
Creators who have been using the Microsoft provided GDK package for Windows, or the Game Core package, and wanting to migrate to these new GDK packages can follow the instructions detailed in this migration guide. We encourage developers using the Windows GDK package, or the Game Core package, who are early in their development to migrate to the new Microsoft GDK packages.

Download
Unity developers can just go to the package manager and install the publicly available Microsoft GDK packages to develop for Windows by following this guide. To download Unity 6 Beta 16 (6000.0.0b16 and up) just head to the Unity Hub and download the pre-release version. You can also directly download it from our Unity beta download page

Requirement for development on Windows: Download the Microsoft GDK for Windows from Microsoft’s GitHub

To learn more about Microsoft’s policy on GDK builds on what is possible with them, please check out the Microsoft GDK documentation

We would love to get your feedback on these packages for Unity 6 Beta, and we look forward to the discussion on this thread.

5 Likes

Hi, so I’ve skimmed the documentation for both packages and from what I understand, these packages are wrappers for Xbox/Windows specific APIs. I tried reading Microsoft’s documentation - What is the Microsoft Game Development Kit? (The TL;DR) - to get more info on what it is but it is unfortunately NDA-ed…

I was initially interested on the backend services (User Identity, Player data, Social, Cloud Storage) you mentioned so I’m guessing this is similar to Steam’s Steamworks or EOS?

Another question I have is if it cross-platform? Say if you’re targeting both PC and mobile (iOS and Android). Docs mention a bit of mobile but most of the APIs are Windows specific so I’m a bit confused on it.

Hello @saskenergy ,

You can download and use the GDK to target Windows without signing an NDA. The Microsoft GDK for Windows can be downloaded from GitHub. Its open to develop against the GDK for Windows. The GDK supports Windows Windows win32 and Xbox builds only as of now. As you mentioned, you should get access to the Xbox services on Windows, like User Identity, by using the GDK.

Here is more additional resources on how to distribute your win32 application on Microsoft Store

1 Like

Except in this post on the forum, there is no mention of the github repo. Microsoft links to the exclusive Xbox download section in their documentation:

@MiTschMR

I added the github of the Microsoft GDK for Windows in the post above to help with the confusion in the Microsoft documentation.

1 Like

A few questions,

  1. this package is available in the current LTS version, not just for Unity 6. Will it still work with the current LTS version?
  2. Removed discussion of an NDA platform

@Unity_Hamed, I would also like to know this.

EDIT: in the README of the packages is stated the following:

## Compatibility

- Unity 6 (6000.0.0b16)
- Unity 2022.3 (2022.3.32f1)
- Unity 2021.3 (2021.3.38f1)

So, I guess it is compatible (I use 2021.3.41f1 because of another post with downloads and required versions… but I guess this will still work)

EDIT:
Removed NDA discussions from the post

This is the Windows Editor section of Unity Discussions. Since Xbox development is governed by NDA agreements, please discuss Xbox development in the appropriate location designated for that.

ok, sorry.
To be honest, the new “forum” is a bit confusing. How do I know if this is for PC or Xbox?

Under the title of the post here, you will see this is under the Unity engine 6.0 beta discussion

We will edit your posts to remove any Xbox related discussions from here.

1 Like

You can gain access to the Xbox sections by applying to the Xbox developer program Xbox Official Site: Consoles, Games and Community | Xbox

Alright. But I think you could give a hint in the original comment with a link for registered xbox developers without hurting any NDA. Would make it less confusing when you are new to Xbox development.

Will keep that in mind in the future. Thanks for the feedback.

Hi @Unity_Hamad,

Do you have any insight into why the Live Switch Sandbox option is disabled? I am trying the sandbox sample.

Hello @stonstad

Please post your question about NDA platforms in the appropriate section of Unity Discussions so that we can answer your question.

Sure thing! This particular Unity GDK package and its sample is available in the public domain. With that said, I definitely want to be respectful, and I’ll continue my question in a different section.

I have now had a chance to work with the combined API and I am finding it works very well. It is straight forward and easy to use. Thank you for your efforts!

Hi @Unity_Hamed

I’ve sign the NDA, are these xbox tools available for Unity 2021?

I’m engine locked due to production scheduling.

Thanks