游戏引擎脚本语言

我正在尝试从Ogre3d渲染引擎中构建一个有用的3D游戏引擎,用于嘲讽我已经提出的一些想法,并进入了一个十字路口。 有很多脚本语言可用,我想知道是否有一两个已经过审查并有适当的关注。

LUA和松鼠似乎是更多的审查,但我敢打开任何和所有。

理想情况下,最好是如果有一个用于分发和易于加载的语言的编译形式。


语法是一个口味的问题,Lua就像Javascript,但花括号替换为类似于Pascal的关键字。 它具有很好的句法特征,即分号从不需要,但空格仍然不重要,因此您甚至可以删除所有换行符并使其仍然有效。 作为一个以C开头的人,我会说Python与所有其他语言相比,是一个具有深奥语法的人。

LuaJIT的速度也是Python的10倍左右,而Lua解释器要小得多(150kb或大约15k行的C语言,你可以通过它阅读并理解)。 您可以让用户编写游戏脚本,而无需嵌入大量语言。 另一方面,如果您将解析器部分从Lua中解压出来,则它变得更小。


一个有趣的选项是stackless-python。 这被用在Eve-Online游戏中。


Python / C API手册比整个Lua手册(包括Lua / C API)长。

Lua的另一个原因是对协程的内置支持(在一个OS线程中的协同多任务)。 它可以让人看起来像1000个脚本一样快速地运行。 就像每个怪物/武器的脚本一样。

(为什么人们用大写的方式写大写的Lua呢?这是“Lua”(见这里)。)

链接地址: http://www.djcxy.com/p/17099.html

上一篇: Game Engine Scripting Languages

下一篇: SQL Server 2005 deadlock with nonclustered index