我正在编写游戏引擎,并且我想使用Io来编写脚本。引擎是用纯C99编写的,而不是C++。我已经成功地将Io绑定到游戏的一些C函数中,并且运行良好。
但是,我想在C游戏循环中调用Io方法。从本质上讲,我想加载脚本(可能与IoState_doFile_()
)含有沿嵌入Io语言:从C调用Io方法
Game init := method(...)
Game keypress := method(key, ...)
// and update, render, etc
线的东西。然后,在C游戏循环,我想调用这些函数,其中一些我需要将参数传递给。不幸的是,Io的文档很好,但却非常稀疏。我已经挖掘了一下IoVM代码,并没有发现任何有用的东西(我可能不够努力)。什么是最好的方法来做到这一点?像
sprintf(buf, "Game update(%u)", &deltaTime);
IoState_doCString_(buf);
东西似乎相当hackish的(假设它甚至还可以,我没试过),更不用说真正地大概是低效的。
请参阅http://tech.groups。 yahoo.com/group/iolanguage/message/4471 – Christoph
@Christoph你是一个搜索忍者! (我试过雅虎集团没有成功。)非常感谢,看起来像我正在寻找的东西。如果您将它作为答案发布,我会接受它。 –
@Christoph第二看,似乎只允许我传递硬编码参数。我会仔细研究一下,看看我能否实现这个目标。 –