Se espera que el nuevo diseño del Microsoft Game Development Kit (GDK) para encabezados y bibliotecas que se describe en este artículo se publique en el GDK de octubre de 2025. Póngase en contacto con su administrador de cuentas de Microsoft si le interesan las compilaciones preliminares de este GDK.
Diseño anterior de encabezados y bibliotecas
El diseño de archivos existente del Microsoft GDK se resume de la siguiente manera.Nuevo diseño de encabezados y bibliotecas
Para la versión del GDK de octubre de 2025, el nuevo diseño ofrece un diseño alternativo para los encabezados y las bibliotecas que facilita la integración de plataformas y permite dar cabida a plataformas adicionales con el tiempo.Uso del nuevo diseño con plataformas personalizadas de MSBuild
Las plataformas de MSBuild Gaming.*.x64 existentes usan el diseño anterior de forma predeterminada, pero puede optar por el nuevo diseño estableciendo la propiedad GDKCrossPlatform.
El proyecto debe agregar a AdditionalDependencies las bibliotecas de extensión que consuma, porque cada una de ellas es de participación voluntaria (“opt-in”).
El proyecto también debe copiar en el diseño las DLL adicionales que use. Puede hacerlo mediante pasos de compilación personalizados (Custom Build), habituales en muchas integraciones de bibliotecas DLL, o editando el archivo vcxproj o agregando un archivo props para usar la lista del grupo de elementos ReferenceCopyLocalPaths. El código de MSBuild siguiente enumera todas las DLL posibles, pero cada proyecto individual solo necesitará algunas de ellas.
GameDKLatest solo lo establece el Microsoft GDK con XBOX Extensions. Por ello, hemos introducido nuevas variables de entorno que admiten totalmente la instalación en paralelo de ambas versiones del Microsoft GDK: GameDKCoreLatest lo establece el Microsoft GDK.Uso de un archivo Directory.Build.props
Como forma de validar rápidamente proyectos Gaming.*.x64 del GDK existentes mediante el nuevo diseño, coloque el contenido siguiente en un archivo llamado Directory.Build.props en su árbol de código fuente. Esto activa el nuevo diseño e incluye la mayoría de las bibliotecas de extensión, o todas, aunque el proyecto no las use.Las reglas de MSBuild no usan la propiedad GDKExtLibNames al compilar con GDKCrossPlatform establecido en true. Como ya está presente para compilar con las reglas de MSBuild más antiguas, en este archivo props se usa como una forma de habilitar algunas DLL adicionales en el diseño.
Cómo actualizar un juego x64 para agregar ARM64
Para agregar compatibilidad con ARM64 a un proyecto de juego x64 existente, siga estos pasos:- Use Visual Studio 2022. La compatibilidad con ARM64 requiere Visual Studio 2022. Visual Studio 2019 no es compatible con las compilaciones ARM64.
- Habilite el nuevo diseño. Asegúrese de que su proyecto use el nuevo diseño estableciendo
GDKCrossPlatformentrueen el archivo del proyecto. - Cree configuraciones ARM64. Copie sus configuraciones x64 existentes (como Debug y Release) para crear las configuraciones ARM64 correspondientes.
- Actualice las rutas de bibliotecas. Edite los directorios de VC++ de sus configuraciones ARM64 para que la ruta de bibliotecas haga referencia a
lib\arm64en lugar de alib\x64. - Actualice las referencias a la biblioteca XSAPI. Actualice las instrucciones de vinculación de todas las configuraciones (no solo ARM64) para usar
Microsoft.Xbox.Services.143.GDK.C.liben lugar deMicrosoft.Xbox.Services.142.GDK.C.lib. - Actualice ReferenceCopyLocalPaths. Compruebe el uso de
ReferenceCopyLocalPathsen su archivo.vcxprojque podría necesitar actualizarse para hacer referencia a la carpeta binarm64en lugar de ax64.
Si el inicio de su título falla con el error 0xc000007b, significa que ha intentado cargar accidentalmente una DLL con formato x64 en su proceso ARM64. Compruebe si en su sistema de proyecto hay elementos
ReferenceCopyLocalPaths que podrían necesitar actualizarse.Uso del nuevo diseño con la plataforma x64 de MSBuild
En lugar de usar la plataforma Gaming.Desktop.x64, puede usar la plataforma estándar x64 para compilar para PC. En el diseño anterior, esto requería agregar instrucciones<Import Project="...\ExtensionLibrary.props"> para las bibliotecas de extensión, tal como se detalla en Uso de la plataforma x64 con el Microsoft Game Development Kit (GDK).
En el nuevo diseño, las instrucciones de integración se han simplificado.
Uso del nuevo diseño con CMake
Cuando use los generadores de Microsoft Visual Studio con CMake y las plataformas personalizadas de MSBuild Gaming.*.x64, habilite el nuevo diseño con el código siguiente.VS_GLOBAL_GDKExtLibNames y reemplácelo por el código siguiente (suponiendo CMake 3.21 o posterior) para copiar en el diseño las DLL de extensión utilizadas.
Uso del nuevo diseño con sistemas de compilación personalizados
Compilar para Windows x64 mediante el GDK requiere lo siguiente.Lectura de la edición de compilación desde un archivo instalado
El nuevo diseño no contiene el archivogrdk.ini. Para encontrar la información de edición analizando un archivo, use grdk.h.
Este es un ejemplo en PowerShell que también funciona con versiones anteriores del GDK.
