说起脚本语言,搞过游戏开发的,基本都不陌生,平时接触到的脚本也比较多。
比如:
Python:
工作之后研究的第一个脚本语言。这个脚本的功能很多模块很全,技术非常成熟,应用领域非常广,甚至你可以认为他就是一门开发工具。有完整的开发调试发布工具,不单可以用于游戏开发,还可以用于WEB开发、应用程序开发等。著名的游戏《阿猫阿狗2》用的就是这个脚本系统。
AngleScript:
我在仙四项目组时所使用过的脚本,脚本语言里的新秀,有着C/C++类似的语法,支持对象,与C++天然融合,可以自定义内存管理器,支持对象,良好的协同管理技术。至少为止已经有很多游戏都采用这款脚本引擎。
官网:AngelScript - AngelCode.com
Lua:
我现在所有项目组中大量使用以及被著名的魔兽世界中所使用。Lua的成名很大程序上也是藉着魔兽的名气而名声大噪,但是Lua确实不负众望,成为游戏开发领域的脚本引擎之王。Lua不仅运行效率好,而且语法简单易于掌握(尤其对策划而言)。
官网:The Programming Language Lua
LuaPlus:
这个其实已经不能单独算是一个脚本引擎了,他依赖于Lua,算是对Lua的一个C++包装,让其更易使用!而且引入了一些面向对象的思想。但是Lua终究不能完成对对象的完美支持!仅仅是伪对象!
官网:GitHub - jjensen/luaplus51-all: Full LuaPlus distribution
JavaScript:
其实这个也有开源的项目,不过游戏领域应用的人并不多,大多是应用软件!我也仅仅是作为一个观注者观注而已,对其不了解之浅不足以发现一些看法!JavaScript的开源项目名称是SpiderMonkey。
官网:http://www.mozilla.org/js/spidermonkey/
以上都是一些大众化的脚本引擎,没有绝对的好,没有绝对的合适,所有的好与坏其实均看是否适合你的项目。
只有对每个脚本系统都有了充分的认识及了解,才能更好的发挥脚本的威力和其扩展功能!