Compilando para la Plataforma Universal de Windows (Universal Windows Platform, UWP)

Ver también

Esta página describe cómo compilar binarios de plantillas de exportación para UWP desde el código fuente. Si estás buscando exportar tu proyecto a UWP, lee Exportación para Windows Universal Platform.

Requerimientos

  • SCons 3.0+ (consulta Compilando para Windows para más detalles).

  • Visual Studio 2017 o posterior. Consulta Compilando para Windows para obtener más detalles sobre las advertencias de instalación y las diferentes indicaciones.

  • Windows 10 SDK (puede seleccionarse durante la instalación de Visual Studio).

  • Fuente de ANGLE. Utiliza la rama ms_master (predeterminada). Guárdalo en una ruta sin espacios para evitar problemas.

Nota

El repositorio ANGLE de Microsoft ha sido descontinuado y la rama ms_master ha sido eliminada.

Sin embargo, como solución temporal, todavía es posible descargar un estado anterior del código fuente a través del commit c61d048.

Esta página se actualizará en el futuro para reflejar las nuevas instrucciones de compilación.

Ver también

Para obtener el código fuente de Godot para compilarlo, consulta la sección Consiguiendo el código fuente.

Para obtener una visión general del uso de SCons para Godot, consulta la sección Introducción al sistema de compilación.

Compilando

Debes abrir un símbolo del sistema (prompt) de Visual Studio adecuado para la arquitectura de destino que deseas compilar. Consulta Compilando para Windows para ver cómo funcionan estos símbolos del sistema y cómo seleccionar la arquitectura correcta para la compilación.

Hay tres arquitecturas de destino para UWP: x86 (32 bits), x64 (64 bits) y ARM (32 bits). Para la última, puedes ejecutar vcvarsall.bat con x86_arm o amd64_arm como argumento para establecer el entorno.

Establece la variable de entorno ANGLE_SRC_PATH al directorio donde descargaste el código fuente de ANGLE. El proceso de compilación también construirá ANGLE para producir las DLL requeridas para la arquitectura seleccionada.

Una vez que estés listo, ejecuta el comando de SCons de manera similar a las otras plataformas:

C:\godot>scons platform=uwp

Creando plantillas de exportación para UWP

Para exportar utilizando el editor, necesitas construir adecuadamente las plantillas. Necesitarás las tres arquitecturas con plantillas debug y release para poder exportar.

Abre el símbolo del sistema (command prompt) para una arquitectura y ejecuta SCons dos veces (una vez para cada destino):

C:\godot>scons platform=uwp target=release_debug
C:\godot>scons platform=uwp target=release

Repite el proceso para las otras arquitecturas.

Al final, tu carpeta bin tendrá los binarios .exe con nombres como godot.uwp.opt.debug.32.x86.exe (con variaciones para cada destino/arquitectura).

Copia uno de estos archivos a misc/dist/uwp_template dentro de la carpeta de origen de Godot y cambia el nombre del archivo a godot.uwp.exe. Desde la fuente de ANGLE, dentro de winrt/10/src/Release_%arch% (donde %arch% puede ser Win32, x64 o ARM), obtén los archivos libEGL.dll y libGLESv2.dll, y colócalos junto con el ejecutable.

Agrega los archivos de la carpeta uwp_template a un archivo ZIP. Luego, cambia el nombre del archivo ZIP resultante de acuerdo con el destino/arquitectura de la plantilla:

uwp_x86_debug.zip
uwp_x86_release.zip
uwp_x64_debug.zip
uwp_x64_release.zip
uwp_arm_debug.zip
uwp_arm_release.zip

Mueve esas plantillas a la carpeta [versionstring]\templates en la ruta de configuración de Godot, donde versionstring es la versión de Godot para la cual has compilado las plantillas de exportación, por ejemplo, 3.0.alpha para la versión alfa de Godot 3. Si no deseas reemplazar las plantillas existentes, puedes establecer la propiedad "Custom Package" en la ventana de exportación.

Ejecutando aplicaciones UWP con Visual Studio

Si deseas depurar el puerto UWP o simplemente ejecutar tus aplicaciones sin empaquetarlas y firmarlas, puedes implementar y ejecutarlas utilizando Visual Studio. Puede ser la forma más sencilla si estás probando en un dispositivo como un teléfono con Windows o una Xbox One.

Dentro de la carpeta de origen de ANGLE, abre la carpeta templates y haz doble clic en el archivo de script install.bat. Esto instalará las plantillas de proyecto de Visual Studio para aplicaciones ANGLE.

Si aún no has construido Godot, abre la solución winrt/10/src/angle.sln desde la fuente de ANGLE y compílala para el destino Release/Win32. Es posible que también necesites compilarla para ARM si planeas ejecutarla en un dispositivo. También puedes usar MSBuild si te sientes cómodo con la línea de comandos.

Crea un nuevo proyecto de aplicación de Windows utilizando la plantilla de proyecto "App for OpenGL ES (Windows Universal)", que se encuentra en la categoría Visual C++/Windows/Universal.

Este es un proyecto base con las dependencias de ANGLE ya configuradas. Sin embargo, por defecto, selecciona la versión de depuración de las DLL, que generalmente tienen un rendimiento deficiente. Por lo tanto, en el filtro "Binaries", haz clic en cada una de las DLL y en la ventana "Properties" y cambia la ruta relativa de Debug_Win32 a Release_Win32 (o Release_ARM para dispositivos).

En el mismo filtro "Binaries", selecciona "Agregar > Elemento existente" y apunta al ejecutable de Godot para UWP que tengas. En la ventana "Propiedades", establece "Content" (Contenido) en True para que se incluya en el proyecto.

Haz clic con el botón derecho del ratón en el archivo Package.appxmanifest y selecciona "Abrir con... > Editor XML (Texto)". En el elemento Package/Applications/Application, reemplaza el atributo Executable de $targetnametoken$.exe a godot.uwp.exe (o cualquier nombre que tenga tu ejecutable de Godot). También cambia el atributo EntryPoint a GodotUWP.App. Esto asegurará que el ejecutable de Godot se llame correctamente cuando se inicie la aplicación.

Crea una carpeta (no un filtro) llamada game en la carpeta de tu proyecto de Visual Studio y allí puedes colocar un archivo data.pck o los archivos de tu proyecto de Godot. Después de eso, asegúrate de incluir todo utilizando el comando "Agregar > Elemento existente" y establece su propiedad "Content" (Contenido) en True para que se copien a la aplicación.

Para facilitar el flujo de trabajo, puedes abrir las "Propiedades de la solución" y en la sección "Configuración", desmarcar la opción "Build" (Compilar) para la aplicación. Aún así, deberás compilarla al menos una vez para generar algunos archivos necesarios. Puedes hacerlo haciendo clic con el botón derecho del ratón en el proyecto (no la solución) en el "Explorador de soluciones" y seleccionando "Build" (Compilar).

Ahora simplemente puedes ejecutar el proyecto y tu aplicación debería abrirse. También puedes utilizar la opción "Start Without Debugging" (Iniciar sin depurar) del menú "Debug" (Depurar) o presionar Ctrl + F5 para que se inicie más rápido.