我看到有人在一款名为 GTA 5 的游戏中使用 mods 的视频。我对制作一个看起来和现有的一样好的菜单很感兴趣。然后我意识到菜单是用 Lua 制作的,事实上大多数 mod 菜单都是用 Lua 制作的,但 GTA 5 是用 c 和其他语言编写的。所以我的问题是人们为什么使用 lua 来修改大多数游戏而不是 c?
user12602944
问问题
1315 次
1 回答
0
Lua 经常在游戏中使用——Garry's Mod,原版《星球大战前线 II》的模组,仅举几例——作为一种嵌入式脚本语言;它也被 Wireshark 和 NMap 等其他程序用作嵌入式语言。
Lua 是用纯 ANSI C 实现的,它具有一个 C API,允许它轻松地集成到 C/C++ 程序中。(使用的主要头文件是lua.h
、lualib.h
和lauxlib.h
。)尽管它的设计相当轻巧,但它是一种健壮、易于学习的语言,对于将脚本语言嵌入到游戏中的游戏开发人员来说,它是一个有吸引力的选择。
因此,总而言之,虽然 GTA V 在其上运行的引擎确实是用 C/C++ 编写的,但 Lua 可以很容易地作为嵌入式语言包含在它之上,供模组制作者使用。
于 2020-03-26T19:09:21.017 回答