gpt4 book ai didi

c++ - 有人可以解释为什么我想要或需要将 Lua 与 C++ 混合用于游戏吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:10:18 26 4
gpt4 key购买 nike

我研究过一些 Lua,并且我对 C++ 比较熟悉,但我仍然看不出有任何真正的理由我想将 Lua(或任何与此相关的脚本语言)与 C++ 结合使用。如果我已经在用 C++(一种快速语言)制作游戏,为什么我不直接用 C++ 做所有事情呢?毕竟,我已经熟悉C++了。我为什么要花时间学习一门新语言以及如何将它集成到我的 C++ 代码中?我敢肯定,只是让界面设置和工作会有问题。学习需要一些时间,它如何真正得到返回?它真的只对大型开发团队有益吗?

最佳答案

我附和已经说过的话,并且我想在此刻将 Lua 集成到我的游戏引擎中时添加我自己的想法!

这取决于您制作的游戏类型,但无论您对允许粉丝修改您的游戏的感受如何,将引擎组件与游戏组件分开都是一种很好的做法。

第一个主要好处是快速迭代。我做出的最佳决定是连接 F5 键以重新加载 Lua 状态(就像浏览器的 F5 刷新一样,以防不明显)。我可以编辑脚本,然后在我正在运行的引擎中混合 F5 以立即查看结果。这比重建 native 代码要有效得多。您不太可能迷失思路,并且可以非常快速地调试(游戏)问题。

我发现在 Lua 中工作让我更有创造力。它帮助我抛开我僵化、无情的工程师大脑,带出我的实验性大脑#YOLO。为什么我的角色的 HP 需要作为 32 位整数小心且精确地存储在 C++ 对象中?引擎的任何部分都不需要知道那种信息。更高级别的游戏玩法是唯一关心的事情。 HP只是偶尔更新,它涉及“规则”,而不是任何一种引擎考虑。

将 C++ 视为您的 fiddle 大师,将 Lua 视为您的指挥:您的 fiddle 手最好拉得非常好/很快,但您的指挥永远不会拉 fiddle ;他只是告诉你的 fiddle 手拉大声/小声/快点/慢点。

Lua 很慢(相对于 C++),但这很好。 Lua 不需要在 5ms 内将一个 OGG 解压成 PCM;那是你引擎的工作。 Lua 做出非常高级别的决定:“这是我现在想要播放的音频。”

很多项目我一个人做,老实告诉你集成Lua是一件非常好的事情。它在低水平的技术庞然大物和您的实际游戏之间创建了一个非常清晰的分离。

关于c++ - 有人可以解释为什么我想要或需要将 Lua 与 C++ 混合用于游戏吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22949454/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com