我正在使用适用于 iOS 平台的 SceneKit 开发一个游戏项目,并希望使用 Lua 脚本通过 Lua 脚本中的命令加载资源(3D 文件、音乐),以便设计师将在 Lua 中编写命令来加载他的文件场景中的特定点,还可以调整其属性以及与其他节点的交互等。并且将编写代码来执行命令。我知道我必须包含 Lua API 并编写桥接文件来集成 API,但不确定如何实现我提到的内容。有人可以建议任何此类示例或任何想法吗?
最佳答案
我过去曾研究过这样做。我从源代码构建 Lua。
- 为此,您需要创建一个桥接头。如果你创建一个新的
C
头文件,Xcode 应该询问你是否要创建一个桥接头文件。 仅供引用,当它制作这个文件时,它还会设置 swift 编译器标志“Objective-C Bridging Header”以指向正确的文件。- 然后您需要将 Lua 源代码复制到项目中并进行构建。此时,您还没有将 Lua 代码暴露给 swift。
- 将适当的 Lua 头文件包含到桥接头中。所以把这样的东西放进去:
#include "lua.h"
在这一点上,你会想要编写一些函数来桥接他们使用的一些 Lua 宏。这些与 swift 不兼容,因此您需要重写它们。
有关引用,请查看开发人员指南 here .
关于ios - 用于 iOS 的 Lua 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37156956/