【发布时间】:2010-10-08 01:33:04
【问题描述】:
目前我有一组用于我的类的 SWIG 包装器,它们都可以构建。我可以创建一个 lua 虚拟机并加载我的包装器,但那时我很困惑。谷歌搜索告诉我如何将 c++ 放入 lua in swig,但不告诉我如何将 lua 放入 c++。
我真正想做的就是设法实例化一个 lua 对象并将其传递给我的主游戏引擎对象指针,我可以从那里进行管理
【问题讨论】:
目前我有一组用于我的类的 SWIG 包装器,它们都可以构建。我可以创建一个 lua 虚拟机并加载我的包装器,但那时我很困惑。谷歌搜索告诉我如何将 c++ 放入 lua in swig,但不告诉我如何将 lua 放入 c++。
我真正想做的就是设法实例化一个 lua 对象并将其传递给我的主游戏引擎对象指针,我可以从那里进行管理
【问题讨论】:
看看 Programming in Lua 这本书,它有一个关于 Lua C API 的部分。
要调用 Lua 函数,请使用 lua_pcall,它等效于 lua_call(有一个简短的示例),但它会捕获 Lua 运行时错误。
您必须已经加载并运行过一次脚本(例如使用luaL_dofile),因为第一步是让脚本定义您要调用的函数。当它返回时,您可以使用lua_getglobal 访问脚本定义的函数。
【讨论】: