为什么将lua嵌入到游戏引擎中?

Unr*_*gic 4 embed scripting lua

我一直在研究从头开始构建一个基本的游戏引擎,在制作了其他引擎共有的功能列表之后,其中一个更重要的事实是它们具有嵌入式脚本语言,如lua或python.

我的问题是嵌入式脚本语言如何优于仅创建用户可以包含在c ++文件中的头文件(或类似内容),这使得他们可以访问许多函数和状态.我确信那里有一个非常好的答案,我还没有发现它.

除了为什么需要它之外,什么是像游戏引擎这样的语言使用的语言?

Mud*_*Mud 6

Lua是一种比C++简单得多的语言,编辑它所需要的只是一个文本编辑器.这使得能够将设备和最终用户手中的事件和/或高级游戏逻辑编写脚本.动态类型和垃圾收集允许他们编写非常简洁的代码,专注于游戏逻辑,而不是使用C++等语言获得的所有系统级管理工作.沙盒也容易得多.

Lua是一个受欢迎的选择,因为它是小型,便携,可破解的ANSI C代码库; 易于嵌入,扩展,并且 - 最重要的是对于游戏开发人员 - 它具有最小的运行时间(最快的解释语言之一).它也是易于学习/读/写语法的完美组合,但具有强大的功能,如协程,在游戏中非常有用.