docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    GDK edition selection

    The Microsoft GDK API package typically supports the latest version of the Microsoft GDK SDK available at the time of package release. However, there are scenarios where you might need to use a different version, such as in the following cases:

    • Working with older projects that require specific Microsoft GDK version
    • Working on multiple projects at different stages of their release cycle
    • Compatibility requirements with other middleware or tools
    • Transitioning gradually to a newer Microsoft GDK version, for example, to test compatibility before fully integrating it into your project

    To accommodate these needs, the Microsoft GDK API package aims to provide flexibility and allows a Unity project to use a specified version of the Microsoft GDK SDK based on edition number.

    Important

    Use Microsoft GDK SDK versions newer than the package release for evaluation and testing only. These are not recommended for product release. For more information, refer to Limitations.

    Note

    Microsoft GDK edition numbers are 6 digits long in the YYMMUU format where: YY - Year, MM - Month, UU - Update. For example: 241001 indicates October 2024 Update 1.

    GDK development on Windows standalone platform

    When using the GDK for the Windows standalone platform, the Unity project requires specific Dynamic Link Libraries (DLLs) from the Microsoft GDK SDK. Mananging these dependencies manually can be complex because:

    • Required DLLs vary between different Microsoft GDK SDK versions
    • Library locations and filenames might change between versions
    • Libraries might be added or removed in different Microsoft GDK SDK releases

    The Microsoft GDK API package for Unity automatically handles these dependencies, eliminating the need for manual library management.

    The package automatically imports the required DLLs into your project's Assets/Plugins/GDK folder. These DLLs are available for use in Editor Play mode and are included in the Windows standalone builds.

    Default behavior

    The default behavior occurs when:

    • The Assets/Plugins/GDK folder does not exist
    • The GdkEdition.json tracking file is missing

    In these cases, the Microsoft GDK API package automatically imports DLLs from the latest available Microsoft GDK SDK edition.

    Note

    When upgrading from an earlier version of the Microsoft GDK API package, the package re-imports the Microsoft GDK DLLs and creates a tracking file automatically. If you want to use an alternative edition of the Microsoft GDK, update the edition number in the tracking file as required.

    GDK edition tracking

    The Microsoft GDK API package uses a simple JSON format file GdkEdition.json to keep track of the GDK edition used by your project. This tracking file is located in the Assets/Plugins/GDK folder of the project. The file is created automatically when the Microsoft GDK SDK DLLs are imported and contains the edition number from which the DLLs originated.

    The Microsoft GDK API package monitors this tracking file for changes.

    • If the tracking file is missing, the package triggers an import from the latest available Microsoft GDK edition.
    • If the tracking file is changed, the package triggers an import from the specified Microsoft GDK edition.
    Note

    The Microsoft GDK API package always verifies the expected DLLs when the Editor first loads the project and on a domain reload.

    Disable GDK edition tracking

    You can disable the automatic import behavior of the Microsoft GDK API package if required. To do this, set the edition number to -1 in the GdkEdition.json tracking file.

    DLL handling

    The Microsoft GDK API package provides useful information and error messages in the Unity Editor's Console window.

    After entering Editor Play mode, the DLLs are loaded and locked by the Editor. This means that the Microsoft GDK API can not automatically re-import the DLLs if needed. In this situation, you need to restart the Editor to release the lock.

    The Microsoft GDK API only manages the DLLs that are part of the Microsoft GDK SDK. It does not touch any additional files which might exist in the Assets/Plugins/GDK folder.

    Limitations

    The Microsoft GDK API package is primarily tested against the latest supported Microsoft GDK SDK version at the time of package release. This version is considered the recommended SDK version for use with the package.

    The package attempts to maintain backward compatibility with older Microsoft GDK SDK versions where possible. However, full functionality cannot be guaranteed for all previous versions.

    While it is possible to configure the package to use newer Microsoft GDK SDK versions than those available at package release, this is not recommended as it might lead to:

    • Unexpected behavior
    • Compatibility issues
    • Runtime errors
    • Missing or changed functionality
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)