GithubHelp home page GithubHelp logo

sondro / gdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from microsoft/gdk

0.0 1.0 0.0 567.59 MB

Microsoft Public GDK

Home Page: http://aka.ms/gamedevdocs

License: Other

PowerShell 37.67% Batchfile 62.33%

gdk's Introduction

Microsoft Game Development Kit (GDK)

Already in an Xbox developer program and looking for the GDKX or related resources to build and publish to Xbox consoles?

Continue below to learn more about the GDK and Microsoft’s modern game development app model.

The Microsoft Game Development Kit (GDK) contains the common tools, libraries, and documentation needed to build games for the Xbox App on Windows 10, Xbox Game Pass for PC, Xbox consoles (Xbox Series X|S, Xbox One), and Xbox Game Pass cloud gaming.

You can obtain the latest release of the GDK on GitHub here: https://aka.ms/gdk.

  • Prior to this public release, the GDK was only available to developers under confidential licenses within an Xbox developer program.
  • The GDK is now available to all developers free of charge, to help developers learn how to build games for the Xbox App on Windows and Game Pass; no license required for learning.
  • Additional licensing is required to obtain the Xbox Extensions to build games optimized for Xbox consoles or publish games to the Microsoft catalog for any platform.
  • More information can be found in our GDK public documentation (http://aka.ms/gamedevdocs)

GDK vs. GDKX Comparison Table



When to use the GDK

Game development on Microsoft platforms has a history going back 40+ years which means that there have been and still are many options to build games that reach gamers on PC. The GDK is an evolution to the Win32 legacy, to unify the app model between Xbox consoles, Windows PCs, and now Cloud Gaming to enable game developers to reach even more gamers on more devices, with less effort. Microsoft Gaming Services are agnostic across many ecosystems and the GDK is sharing the app model across MILLIONS of devices.

Q: How do I build next-generation games for the Xbox App on Windows 10 and Xbox Game Pass for PC?

(1) Requires software and licensing which only available via an NDA Xbox program (e.g. ID@Xbox program).

Q: How do I run a GDK game built for the Xbox App on Windows 10 or Xbox Game Pass for PC on Xbox Consoles?

  • Xbox console development requires the “Microsoft Game Development Kit with Xbox Extensions (GDKX)”. Games will need to retarget and rebuild for Xbox One or Xbox Series X|S with the GDKX installed.
  • You need to download, install, and retarget your project for Xbox consoles using the GDKX
  • The GDKX is currently only available under confidential license within an NDA Xbox program (e.g. ID@Xbox).
  • The GDKX is just a bundled installer of the GDK + Xbox Extensions. Building a game with the GDK shares around ~80% of the same interfaces, but does not include the Xbox environment APIs and tools included in the Xbox Extensions.
  • The primary difference between games built with the GDK and the GDKX is the interaction with the Xbox graphics driver and DirectX12 Shader Compiler.
  • For developers building Xbox One games today, Win32 + GDK is a direct replacement for the WinRT-based Exclusive Resource Application (ERA) app model using the XDK, introduced on Xbox One; Xbox 360 developers similarly migrated to ERA in 2013.

Q: How does the GDK compare to the Microsoft Universal Windows Platform (UWP)?

  • The Universal Windows Platform was introduced in 2015 for Windows 10 as a bridge between all the devices in the Windows family (Windows Phone, Surface, Windows PCs, and Xbox One*).
  • Key feature for is open development and self-publishing to Windows Mixed Reality (MR) or the Microsoft Store on Windows 10 PCs and Xbox; particularly well suited for interactive media applications.
  • For developers building Win32 games today, UWP requires porting to the WinRT programming model*.
  • UWP apps and games are community-supported only; partners inside Xbox managed programs (Xbox, Xbox Game Pass, Xbox Game Streaming) should use Microsoft Win32 + GDK.



How the GDK is released

In the “When to use the GDK” section above, we cover the scenarios for which the GDK was designed to provide a modern app model that flows across Xbox consoles, Windows PCs, and Cloud Gaming.

In this section, we cover some of the more practical, basic questions that are also answered in the documentation, but come up frequently from developers getting started with this app model.

Q: What is the public GDK release schedule?

  • Three major GDK release branches a year with a mix of new features and fixes (flexibly April, June, and October to align with game development cycles).
  • GDK updates can release in parallel as needed, on separate branches, focused on reliability, stability, and fixes. Developers can take updates vs. another major version to reduce churn and risk of breaking changes affecting compatibility (e.g. April Update #1, April Update #2, April Update #3, June Update #1, etc).

Q: Where are detailed public release notes published?

  • A public version of the release notes that does not contain confidential information about Xbox features is under development.
  • A full version of the release notes with public + confidential information is available as part of the GDKX release and will be available for the public GDK sometime after June 2021; they will be published to the GitHub repo (http://aka.ms/gdk)

Q: What are some of key elements missing in the GDK that is needed to build games for Xbox consoles?

  • The Xbox developer environment APIs and Tools required to target and build games that run on Xbox consoles, currently only bundled as the GDKX installer package.
  • The Xbox graphics driver and related DirectX 12 components (e.g. Shader Compiler) required to build binaries that work with proprietary Xbox hardware and software interfaces.
  • The corresponding confidential documentation for Xbox environment APIs and Tools; though some topics are only discoverable with access to the GDKX, most topics are available as public docs (~60%) or are discoverable via the table of contents as a redirect to the confidential documentation libraries (~35%).

gdk's People

Contributors

fly1ngsqu1rr3l avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.