虚幻4引擎将至!从虚幻看游戏引擎发展
曾经有一段时期,游戏开发者关心的只是如何尽量多地开发出新的游戏并把它们推销给玩家。十几年前的游戏都很简单,容量大小都是以M计,但每款游戏的平均开发周期也要达到8到10个月以上,这一方面是由于技术的原因,另一方面则是因为几乎每款游戏都要从头编写代码,造成了大量的重复劳动。
渐渐地,一些有经验的开发者摸索出了一条偷懒的方法,他们借用上一款类似题材的游戏中的部分代码作为新游戏的基本框架,以节省开发时间和开发费用。根据老马的生产力学说,单位产品的成本因生产力水平的提高而降低,自动化程度较高的手工业者最终将把那些生产力低下的手工业者淘汰出局,引擎的概念就是在这种机器化作业的背景下诞生的。
引擎的诞生(1992年~1993年)
德军司令部的纵深空间让人眼前一亮
1992年,3D Realms公司/Apogee公司发布了一款只有2兆多的小游戏——《德军司令部》(Wolfenstein 3D),稍有资历的玩家可能都还记得初接触它时的兴奋心情,用“革命”这一极富煽动色彩的词语也无法形容出它在整个电脑游戏发展史上占据的重要地位。这部游戏开创了第一人称射击游戏的先河,更重要的是,它在X轴和Y轴的基础上增加了一根Z轴,在由宽度和高度构成的平面上增加了一个向前向后的纵深空间,这根Z轴对那些看惯了2D游戏的玩家造成的巨大冲击可想而知。
3D引擎之父——约翰·卡马克
Wolfenstein 3D引擎的作者是大名鼎鼎的约翰·卡马克,这位id Software公司的首席程序师正是凭借这款Wolfenstein 3D引擎在游戏圈里站稳了脚跟。
游戏引擎出现之后,也在另一方面促进着游戏开发。随着显卡性能越来越强,游戏的画质越来越高,游戏开发周期也越来越长,通常都会达到3到5年,自行开发游戏引擎的话时间还会更长,所以大多数游戏公司还是选择购买现成的游戏引擎,简化游戏的开发过程。
那么,实际的游戏开发过程中,游戏引擎是如何把游戏与显卡连接在一起的,游戏中的各种特效是如何调用显卡来实现的?这个问题如果要回答的很专业,恐怕不在笔者知识范围之内了,不过我们可以用很简单的方法来说解释一下。显卡是游戏的物理基础,所有游戏效果都需要一款性能足够的显卡才能实现,在显卡之上是各种图形API,目前主流的是DirectX和OpenGL,我们所说的DX10、DX9就是这种规范,而游戏引擎则是建立在这种API基础之上,控制着游戏中的各个组件以实现不同的效果。
在引擎之上,则是引擎开发商提供给游戏开发商的SDK开发套件,这样游戏厂商的程序员和美工就可以利用现成的SDK为自家的游戏加如自家建立的模型、动画以及画面效果,而最终的成品则是各种游戏。