用于游戏开发的C++嵌入式脚本语言 - 找不到我喜欢的任何东西

Vit*_*meo 7 c++ scripting game-engine c++11

我正在拼命寻找一种快速,类似C的语法,易于嵌入,易于包装脚本语言以嵌入我的C++游戏中.

到目前为止,我已经尝试过:

  • Lua:它可以工作,但是围绕它包装全局C++函数是很痛苦的,并且包装对象更加困难.另外,我真的不喜欢Lua的语法.
  • AngelScript:无法让它发挥作用.初学者文档是绝对的,因为第一个示例不能编译,并且您必须首先构建许多加载项.包装C++对象和函数看起来比Lua更容易,但它仍然可以更清晰.语法看起来很好.
  • ChaiScript:无法让它发挥作用.我使用非git和git C++ 11版本时遇到了很多错误.我不想使用boost版本,因为我不想在我的项目中引入boost作为依赖项.包装看起来很简单,语法也可以.

我也调查过:

  • Pike:语法看起来不错,但我没有找到有关嵌入的文档.
  • Squirrel:我不喜欢语法,嵌入/包装和Lua一样烦人,不得不处理堆栈.

所以:

  • 是否有一个好的快速,类C语法,易于嵌入,易于包装替代?
  • 如果没有 - 创建脚本语言的最佳学习资源是什么?我喜欢重新发明轮子,这可能是一次有趣的学习经历.

Pau*_*xon 4

对于类似 C 的语法,请查看

  • Ch商业、嵌入式 C 解释器
  • CINT开源 C/C++ 解释器
  • Pawn - 一种“简单、无类型、具有类似 C 语法的 32 位扩展语言”

可能不适合您,但由于这个问题可能会出现其他人会感兴趣的替代方案列表,因此我为您提供QtScript,它为您提供类似 Javascript 的语法。包装可以很简单,但是您需要采用 Qt 框架来完成它,特别是信号和槽的概念。

还有SpiderMonkey,来自 Firefox 的 JS 引擎。