嵌入式脚本语言深层原理

时间:2013-11-05 13:03:30

标签: game-engine scripting-language 8-bit

我的问题是:

Scripting languages and Game Dev/Programming

我想问的是将脚本语言嵌入到游戏中的深层原理。如果你查看维基百科:

http://en.wikipedia.org/wiki/Freescape

然后你可以看到80年代的3D引擎使用嵌入式脚本语言。比如说,在ZX Spectrum 48上运行的游戏有一个用于脚本语言的嵌入式解释器。脚本语言的嵌入长期以来一直很受欢迎,似乎暗示,将脚本语言嵌入到游戏中有根深蒂固的原因。从80年代到现在,这样做的原因是什么?或者原因有所改变?引用问题中给出的答案不可能全部适用于过去计算时代的情况。

2 个答案:

答案 0 :(得分:2)

我不太了解过去的所有原因,但我可以想象现在的所有原因都适用于80年代硬件/工具的游戏开发。重用“组件”并对其进行编辑会更容易,更快速,并且可以更轻松地完成不同的任务。

脚本允许制作更好的游戏原型。有时需要花费很长时间来编译你的(原型)游戏,只是为了测试一些新功能或配置。脚本允许动态重新编程并(重新)测试您的需求。现在差别不大了。似乎原因没有改变很多。主要原因可能仍然存在,因为游戏(特殊的“三A”游戏)比以前复杂得多。

答案 1 :(得分:1)

现在,脚本编写的所有好处同样适用。所以你可以立即奖励积分:

  • 关注点分离 - 关卡设计师和引擎程序员几乎不需要谈论条款,因为特定游戏成为与代码主体分开的单独项目;和
  • 更快的原型设计和实验 - Freescape的脚本语言被编译成字节代码,但脚本往往与整个游戏的重量相比非常短,因此尝试更改的速度更快。

此外,Freescape引擎在当时是一项庞大而昂贵的开发 - 它们花费了14个月的时间,相比之下,大多数现代产品都接收了一两个月。脚本化所有游戏逻辑为他们实现了重要的次要目标:可移植性

第一款Freescape游戏Driller在其所有版本中使用完全相同的数据和脚本。他们必须为Spectrum,CPC,C64,Amiga和PC(总共四个CPU架构,为一个需要用汇编语言编写的项目)构建它,但是一旦完成了游戏逻辑只编写一次,随处运行 - 构建后续游戏并同时全面发布它们变得非常容易。

计算3D构建工具包,他们在接下来的四年中成功发布了五个主要游戏和两个小游戏(Total Eclipse II和Castle Master II,两者都是为了重新发布主题)。

现在,可移植性并不是一个问题,因为人们使用更高级别的语言并且通常与硬件隔离,但原型设计和分离与以往一样重要。