通用Windows平台编译

要求

  • SCons(见 为Windows编译 了解更多详细信息)。

  • Visual Studio 2015更新2。它可能适用于早期版本。见 为Windows编译 关于安装的注意事项和各种提示。

  • Windows 10 SDK(可在Visual Studio安装中选择)。

  • ANGLE source . 使用 ms_master (默认)分支。把它放在一条没有空格的路径上,以避免出现问题。

参见

有关godot的scons用法的概述,请参阅 建筑系统简介 .

编译

需要为要生成的目标体系结构打开适当的Visual Studio提示。检查 为Windows编译 看看这些提示是如何工作的。

UWP有三种目标体系结构:x86(32位)、x64(64位)和ARM(32位)。对于后者,您可以运行 vcvarsall.bat 具有 x86_armamd64_arm 作为设置环境的参数。

设置 ANGLE_SRC_PATH 到下载角度源代码的目录。构建过程还将构建角度,以生成所选架构所需的DLL。

设置好之后,运行scons命令,类似于其他平台:

C:\godot>scons platform=uwp

创建UWP导出模板

要使用编辑器导出,您需要正确地构建包模板。您需要所有三种架构 debugrelease 可以导出的模板。

打开一个体系结构的命令提示符,运行两次scons(每个目标一次)::

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

对其他体系结构重复此步骤。

最后你的 bin 文件夹将具有 .exe 具有类似名称的二进制文件 godot.uwp.opt.debug.32.x86.exe (每个目标/拱门的变化)。

把其中一个复制到 misc/dist/uwp_template 在godot源文件夹中,将二进制文件重命名为 godot.uwp.exe . 从角度源,在 winrt/10/src/Release_%arch% (何处) %arch% 可以是 Win32x64ARM )获取 libEGL.dll 以及 libGLESv2.dll ,将它们与可执行文件放在一起。

将文件添加到 uwp_template 文件夹到zip。根据模板的目标/体系结构重命名结果zip::

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

将这些模板移动到 [versionstring]\templates godot设置路径中的文件夹,其中 versionstring 是您编译导出模板的godot版本,例如 3.0.alpha 对于godot 3的alpha版本。如果不想替换模板,可以在导出窗口中设置“自定义包”属性。

使用Visual Studio运行UWP应用程序

如果您想调试uwp端口,或者只是在不打包和签名的情况下运行应用程序,则可以使用Visual Studio部署和启动它们。如果您在Windows Phone或Xbox One等设备上进行测试,这可能是最简单的方法。

在“角度源”文件夹中,打开 templates 双击 install.bat 脚本文件。这将为Angle应用程序安装Visual Studio项目模板。

如果你还没有建造Godot,打开 winrt/10/src/angle.sln 从角度源生成解决方案并将其生成到release/win32目标。如果您计划在设备上运行,还可能需要为ARM构建它。如果您对命令行感到满意,也可以使用msbuild。

使用“Appfor OpenGL ES(Windows Universal)”项目模板创建新的Windows应用程序项目,该模板位于 Visual C++/Windows/Universal 类别。

这是一个已设置角度依赖项的基础项目。但是,默认情况下,它会选择通常性能较差的DLL的调试版本。因此,在“二进制文件”过滤器中,单击其中的每个DLL,并在“属性”窗口中更改相对路径 Debug_Win32Release_Win32 (或) Release_ARM 对于设备)。

在同一个“二进制文件”过滤器中,选择“添加>现有项”,并指向您拥有的UWP的godot可执行文件。在“属性”窗口中,将“内容”设置为 True 所以它包含在项目中。

右击 Package.appxmanifest 文件并选择“打开方式…>XML(文本)编辑器”。在 Package/Applications/Application 元件,更换 Executable 属性来自 $targetnametoken$.exegodot.uwp.exe (或者无论您的godot可执行文件是什么)。同时改变 EntryPoint 属性到 GodotUWP.App . 这将确保在应用程序启动时正确调用godot可执行文件。

创建文件夹( not a filter)调用 game 在Visual Studio项目文件夹中,可以将 data.pck 文件或您的Godot项目文件。之后,确保将其全部包含在“添加>现有项”命令中,并将其“内容”属性设置为 True 所以它们被复制到应用程序中。

要简化工作流,您可以打开“解决方案属性”,然后在“配置”部分取消对应用程序的“构建”选项的勾选。您仍然需要至少构建一次它来生成一些需要的文件,您可以通过右键单击项目来实现这一点。( not 在“解决方案资源管理器”中选择“构建”。

现在你只需运行这个项目,你的应用程序就会打开。您还可以使用“调试”菜单(ctrl+f5)中的“无调试启动”,以使其启动更快。