微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用于 iOS 的 Godot 自定义共享模块,导出到 XCode 并在其中构建

如何解决用于 iOS 的 Godot 自定义共享模块,导出到 XCode 并在其中构建

我正在尝试从 Shin-NiL 中包含共享模块并导出到 iOS,但在尝试了很多之后还没有成功。我想问一下我的步骤是否正确。

使用:
Godot编辑器:v3.2.3
Godot 源代码:v3.2.3 https://github.com/godotengine/godot
分享模块:https://github.com/Shin-NiL/Godot-Share
XCode:版本 12.3 (12C33)

步骤:

  1. 将“share”目录复制到Godot源码的“modules”目录下

  2. 在“share”模块的文件里面改一些东西,否则会报错。
    (can_build(env,platform) 而不是 can_build(platform);删除检查 godot 版本 2 或 3,只需使用版本 3 的所有内容;修复一些对文件的不正确引用;添加导入。)>

  3. 在 godot 主目录中打开终端并使用 SCons 构建:

scons p=iphone tools=no target=debug arch=arm64
scons p=iphone tools=no target=debug arch=x86_64
lipo -create bin/libgodot.iphone.debug.arm64.a bin/libgodot.iphone.debug.x86_64.a -output bin/libgodot.iphone.debug.fat.a

此时我跳过了 32 位,因为最低 iOS 版本设置为 11,不支持 32 位。如果我尝试将其更改为例如“godot/platform/iphone/detect.py”中的 9,那么它将停止并出现很多错误,说 godot 使用的某些东西需要 iOS 11。

  1. 接下来是让它在 XCode 中构建和运行。我尝试了几种不同的方法
    (一)
    将我刚刚创建的“libgodot.iphone.debug.fat.a”复制到“godot/misc/dist/ios_xcode”并替换现有的。压缩目录,将其命名为“iphone.zip”。在godot中导出时,在自定义模块中选择这个zip。当我尝试在 XCode 中构建结果时,它说“未找到 MoltenVK.a”。
    (b)
    我没有在自定义模块中选择 ZIP,而是用这个替换了标准模板(在“Library/Application Support/Godot/templates/3.2.3.stable”内。然后以正常方式导出。当我尝试在 XCode 中构建它时,我收到了 100 个错误“未定义符号:_vk ...”所有不同的 _vk 东西。
    (c)
    我还尝试使用标准模板正常导出,然后将项目中的“GAME_NAME.a”替换为“libgodot.iphone.debug.fat.a”并将该名称改回“GAME_NAME.a”。在 XCode 中,这给出了与方法 (b) 相同的错误

这给我留下了以下问题:
Q1:
我是否可能做错了什么,实际上您也应该能够通过采取其他步骤为 arm 构建?如果是这样,你将如何做到这一点?
Q2:
我认为跳过手臂不会有问题,如果您在从 Godot 导出时不选中手臂。这对吗?
Q3:
主要问题:基本上我不知道如何从这里继续,我做错了什么?我怎样才能解决这个问题?或者,如果之前有人成功完成过此操作,请分享您的步骤。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。