我开发简单的游戏作为一种业余爱好。对于我的新项目,我想某些部分可脚本。我很熟悉Python,但不介意学习新的语言。这里是这样的问题:

我打算实现路径查找,现场的视觉,碰撞检测等在C ++中,但要使用AI状态机,脚本事件的脚本。用于这样的工作是什么类型的结构? 我想我可以做一个C ++程序中运行Python程序,后者又调用C ++方法,但似乎效率不高。另一个想法是开发一个给Python调用的库,这听起来不是很吸引人无论是。什么是这样做的常规方式(除了写我自己的语言和语法分析器?)我听说Lua是流行的嵌入C语言程序。

有帮助吗?

解决方案

这是我的个人经验,既卢阿和的 TCL 具有用于嵌入奇妙ç的API。这两种语言都非常简单。如果你正在写一个命令界面,我可能会说去与TCL的,但如果你只是使用嵌入式解释,我建议LUA。由于您使用的是C ++,你可能也想看看进入 luabind API,我听说过它的好东西。

有关AI脚本,或其他状态机类型的东西,这个博客帖子通过泽德·肖是很好看的。基于协程-AI代码可以看起来要好很多复杂的脚本,而不是管理状态及其变化情况的一个巨大的一堆。

如果您正在使用python,你可能会更好延长,而不是嵌入

其他提示

从个人的经验,我可以强烈建议谷歌的JavaScript引擎V8。这是非常高性能的,用C ++编写,是十分容易的嵌入,没有其它的依赖和一个真正美丽的原生界面。

http://code.google.com/p/v8/

我同意的Tcl和Lua是在C / C ++应用最简单的嵌入一个。主要是因为这是由设计决定很启动。这是设计用于嵌入另一种语言是狡诈。

如果您有兴趣在C中嵌入的脚本语言++应用程序来看看痛饮。痛饮可以自动创建胶水代码为一些脚本语言,包括Python,你已经知道的。的主要优点是其处理许多不同的脚本语言。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top