从DOOM到CE3 20年3D游戏引擎发展史漫谈(2)

2010-09-01 09:55:22 神评论

【17173专稿,未经授权请勿转载】

今日我们继续漫谈20年来3D引擎发展历史。前文我们了解到了最早的3D引擎是1990年的星际恶棍/地下创世纪(Space Roger/Ultima Underworld)发展到1996年的Renderware,诞生了《侠盗猎车手》系列游戏。

回顾:从DOOM到CE3 20年3D游戏引擎发展史漫谈(1)

引擎:Quake II / id Tech 2

发布时间:1997

代表游戏:《源毒》、《红色代号:机甲竞技场》、《大刀》、《异教徒II》、《黑街霸主》、《SiN》、《命运战士》、《不明飞行物:异形入侵》、《华沙》

尽管原版的Quake已经提供硬件显卡加速,Quake II还是提供了自有的OpenGL支持。其他Quake II引擎(现在被称为id Tech 2)的特色包括色光效果、一个全新的的游戏模式。在那个模式下,游戏可用C语言编写并可从动态链接数据库(DLL)启动。原本游戏只能使用QuakeC编程语言编写。简单说,Quake II可使用软件和OpenGL渲染,因此如果你没有好显卡也不会很难受。 

  令Quake II闻名的另外一个特色是它的可修改性。由于DLL也可适用于游戏逻辑,id也可将源代码对改编人员公开同时保留其余的引擎所有权(他们在2001年公开)。正是由于这个引擎的强大功能,聪明的开发者可以用它来开发完整的角色扮演类游戏(比如 Anachronox)并增加部分功能(比如Soldier of Fortune)。

还有一些有意思的事,像《Daikatana》这种***也是用Quake II开发的。

引擎:Cyan Plasma

发行日期:1998年

代表游戏: Hex Isle, Myst V: End of Ages, realMyst, Uru Live, Uru: Ages Beyond Myst

远离硅谷,Plasma引擎的出生地是一家位于北卡罗来纳州Chapel Hill的公司Headspin。Headspin的团队只有两个人通过将2D引擎授权给书籍出版商而获得创业基金来开发3D引擎。在不久之后,Headspin将Plasma引擎授权给Cyan,并获得了公司扩张和发展游戏引擎所需的资源。

Plasma的第一版支持DirectX7.0,而正如一位早期的游戏开发者所说:“你绝对不会想拿Plasma来开发一款飞行模拟游戏,但是你可以开发一款有角色在虚拟世界移动,收集东西、触发事件的游戏。”

早期版本的Plasma对于支持的包括混合、端口、影效、Max粒子系统等纹理传输量不限。后期版本也加入了一些新特色,例如捆绑Havok物理引擎(随之被PhysX替代),多人网络支持、Bloom HDR光效和最近版本的DirectX 9支持。 


  Plasma最知名的地方大概是支持realMyst(原先被称作Myst 3D),不过它也支持很多其他Myst系列。

引擎:GoldSRC

发行日期:1998年

代表游戏:《胜利之日》、《Deakthmatch Classic》、《反恐精英》、《反恐精英:零点危机》、《枪手历代记》、《詹姆斯邦德007》、《半条命》、《半条命:蓝色行动》、《半条命:对抗武力》、《Richochet》

简称为“Goldsource”, 在这个Quake引擎变形版的帮助下,PC才得以保持相对家用游戏机的优势,至少在它的时代(现在家用机和PC的斗争随着现代科技的应用变得很有趣)。 GoldSrc支持OpenGL和Direct3D,使用它开发出来的知名游戏包括《半条命》、Team Frotress Classic, Day of Defeat和《反恐精英》。不用说,Goldsrc对API的支持对3D显卡的推广和成功游戏的数量颇有贡献。  


  尽管GoldSrc和Quake引擎同源,一个在半条命工作的研发人员指出70%的引擎代码已经被重写。除了增加Direct3D支持之外,Valve也增加了一个骨架。

引擎:Unreal(虚幻引擎)

发行日期: 1998年

代表游戏: 《隐形战阵》、《哈利波特》、《北欧传奇》、《Start Trek: Deep Space Nine: The Fallen》、《虚幻》、《虚幻竞技场》、《幽浮:执行者》

虚幻引擎一开始可能仅仅只是第一人称射击游戏引擎,但是它也能成为不少RPG游戏的基础,其中最著名的大概就是Mass Effect了。当然,它最为人们所熟知的是在《虚幻竞技场》的应用。

虚幻引擎曾经是id Software的Quake II/ id Tech 2引擎的最大竞争者。和Quake II一样,虚幻也是改编者们热衷改造的游戏引擎之一。除了和游戏捆绑出售的自有编程语言之外,开发方Epic也提供一个地图编辑器和修改程序UnrealEd。

冲突检出、色光和一个最基本的纹理过滤等所有软件和硬件效果都是通过虚幻引擎呈现的。同时它也大量读取AMD的3DNow!、Intel的MMX和SSE指令系统。 不过要充分利用虚幻引擎和它大力倚重的Glide API接口,游戏需要有高水准的3dfx显卡,在当时就是Voodoo 5。

引擎:Lithtech

发行日期: 1998年

代表游戏: 《异形大战铁血战士2》、《血祭2恶梦等级》、 《F.E.A.R.》、《F.E.A.R. 2》、《黑客帝国OL》、《魔法门9》、《无人永生》、《Tron 2.0》

Lithtech引擎一开始是Monolith和微软的合作产品,原先被称为DirectEngine,是DirectX图形处理器的一部分。不过不久之后Monolith就与微软分手买回了这个引擎的所有权,并将其重新命名为Lithtech。

以前,Lithtech可能被称为穷人的游戏引擎。在2001年八月刊的《Maximum PC》里一篇评论《亚特兰蒂斯:失落帝国》的文章中作者指出第一印象就是包装盒上的Lithtech的标志。除了《No One Lives Forever》之外,Lithtech可以说是短平快做游戏的引擎选择。它对客户传达的信息就是:“这游戏比Quake或者虚幻引擎做的游戏便宜。”

不过Lithtech也有它的优点,它是一个全面的,也许并不算出色的引擎。后面Lithtech又出现了改进版,并再次改名Jupiter Extended,简称Jupiter EX。这个第四版支持 DirectX 9、一个新的光线模型、Havok物理计算和新的内容开发工具,并被用于《F.E.A.R.》和《F.E.A.R. 2》。

引擎:Outcast

发行日期: 1999年

代表游戏: Outcast

作为一个流行的三维像素引擎,Outcast以软件模式替代了硬件加速。这就意味着玩家不需购买3D显卡就可以玩基于Outcast引擎开发的游戏,这也使它更适合冒险和解谜游戏。不过这也意味着玩家需要一个快速的处理器,在当时就是最少500MHz的奔腾III CPU。

由于Outcast使用的是三位像素引擎,它在远景表现上比以多边形基础的引擎表现更逼真。Outcast还有一些绝招,比如绽放效果、光线放射、冲撞线路、消噪、动态阴影、改进的粒子系统、骨架动画和支持第一和第三人称视角。

引擎:Quake III / id Tech 3

发行日期: 1999年

代表游戏: 《爱丽丝梦游魔境》、《使命召唤》、《荣誉勋章:联合行动》、《命运战士II》、《星球大战之杰迪武士2》、《星球大战之杰迪武士》、《雷神之锤3 竞技场》、《重返德军总部》、《重返德军总部之敌区》

就像AMD对抗Intel,Nvidia对抗ATI,已经延续10年的游戏引擎的战争大部分是在 Quake III (现在的id Tech 3)和虚幻引擎之间展开的。

就如名字所暗示的, Quake III与Quake II很有渊源,但是它不仅仅是一个改进版。这个新引擎脱离了骨架动画,取而代之的是3D像素动画。这两者之间的技术差别我们就不多说了,简单说一下,这个改变让游戏的动画效果更流畅。 


  Quake III也放了大把精力在影效系统上,包括加入了着色器、曲线表面、32兆颜色和较好的网络效果。所有这些都需要一个全面支持OpenGL的3D显卡,至少300MHZ的计算力。Intel奔腾II、AMD K6-2 或者Athlon系列处理器都能满足这个要求。

引擎:GeoMod

发行日期: 2001年

代表游戏:《红色派系I》、《红色派系II》

现如今我们对于游戏环境破坏效果已经有了一定要求,但是对于很多玩家而言,第一次在游戏中感受到破坏的快感是玩《Red Faction》,那时候仿真物理特效还未出现。游戏的主设计师John Slagel开发了Geodmod引擎,Geodmod的意思是 Geometry Modification,即几何变化。 


  就如这个名字所表示,GeoMod引擎根据事件改变游戏环境的几何体。GeoMod是通过即时从几何体中减少布尔值获得这一效果的。正如Red Faction的设计师Alan Lawrenc对Gamespot所说:“当一个火箭撞到一面墙,我们计算出一个形状并把这个形状从游戏世界中减除。我们用布尔值计算出那个形状(我们称之为GeoMod数值)并从游戏世界中移除一个几何体。”

(限于篇幅问题,本文将分上中下三篇,此为中篇)




【来源:】