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

来源:互联网 发布:部落冲突皮卡详细数据 编辑:程序博客网 时间:2024/05/18 01:31
  代表游戏:毁灭公爵3D(Duke Nukem 3D)、猎鹿人(Redneck Deer Hunting)、血祭 (Blood)代表游戏:上古卷轴:战斗尖顶(The Elder Scrolls:Battlespire)上古卷轴:匕首雨(Daggerfall)、终结者系列(Terminator Series,同样只有两作,分别是未来冲击和天网)

 

  随着时代进步,从简单的色块堆砌而成的画面到数百万多边形组成的精细人物,游戏正展示给我们越来越真实且广阔的世界,对于近几年才接触游戏的玩家来说,玩着《魔兽世界》、《生化危机5》等游戏,或许想 象不出十多年前的3D游戏是多么的简陋。而作为3D游戏制作的心脏,3D游戏引擎一直以来都是见证3D游戏发 展的最核心部分。那么,下面不妨让我们打开时光之门,从最初的地方一起随小编一起慢慢走来:(文: 17173 晨星)

  引擎:星际恶棍/地下创世纪(Space Roger/Ultima Underworld)

  发布时间:1990

  代表游戏:星际恶棍/地下创世纪

星际恶棍

  由起源系统公司(Origin Systems)开发的这两款游戏可以说是3D游戏的鼻祖,也开创了以游戏名命名游戏引擎的惯例。早在20年前 ,这些3D游戏的先驱者开始了史无前例的尝试,在当时无异与石器时代的PC平台上表现立体的画面,《星际 恶棍》的系统要求是386(编:用一些简单的数据扫盲下,386的主流配置内存仅2mb,硬盘200mb算蛮大的了 )

地下创世纪

  而之后开发的《地下创世纪》即便在当时最高配置的486上运行也会显得慢慢吞吞。硬件的落后限制了3D技 术的深入研究和发展,很快这两款游戏就无疾而终了。

 引擎:三维像素(Voxel)

  发布时间:1992

  代表游戏:银翼杀手(Blade Runner)、卡曼奇系列(Comanche series)、命令与征服:泰伯利亚之日/红色警戒2(Command &Conquer: Tiberian Sun/Red Alert 2)、三角洲(Delta Force)

卡曼奇

  这款由NovaLogic开发的3D引擎出现在卡曼奇系列游戏的每一作中,游戏制作者能够比较简单利用这款引擎 勾勒出起伏的地形环境,在小物品的3D模型创建上也有独到之处,并被运用到许多伪3D即时战略游戏的车辆 设计上。

命令与征服:泰伯利亚之日

  不可否认,三维像素在3D领域的尝试上迈出了一大步, 其结合体积和像素两个概念,体素是描述物体的三维点阵图,而不是矢量。把每个体素想象为一块积木,而 三维像素引擎让2D的块拥有了不同的高度。通过这种方式,图形更加平滑和详实,同时提供更流畅的游戏速 度。

  引擎:ID Tech

  发布时间:1993

  代表游戏:毁灭战士1&2(Doom 1&2)、邪恶巫师(HeXen)、冲突(Strife)

令人怀念的毁灭战士

  虽然《毁灭战士》一直以来都被称作世界第一款3D第一人称射击游戏,但事实上ID Software公司所使用的ID tech引擎并非真正意义上的3D引擎,而是在一个成熟的2D引擎基础上进行多面渲染,配合分 离的二维多面物体、怪物等贴图,给玩家带来一个美丽的“3D幻象”。因为引擎条件的限制,在《毁灭战士 》是没有抬头和低头的动作的,房间也无法堆叠,整个世界就像一个无限宽广的平地。

邪恶巫师

  但这种伪3D设计思路大大降低了硬件要求,在借助当时主 流VGA显卡的环境纹理映射渲染技术,玩家只需要一台386上就可以领略到《毁灭战士》的风采。也许现在看 来这种表现形式的确粗糙的可笑,但在当时,这就是最真实的游戏世界,因此《毁灭战士》也作为游戏史上 的一个里程碑式的存在为人们所熟知。

引擎:Build

  发布时间:1993年末

  代表游戏:毁灭公爵3D(Duke Nukem 3D)、猎鹿人(Redneck Deer Hunting)、血祭 (Blood)

  因为制作《毁灭公爵3D》而让这款3D引擎新贵名声大噪。事实上,这依然不是真正意义上的3D引擎,对比《 毁灭战士》更成熟的是,《毁灭公爵3D》构筑了几个类似前者那样的2D空间层,然后将其堆叠起来,当需要 表现高度元素时,则把角色从一个平面层传送到另一个平面,给玩家以高度发生变化的感觉。

  Build引擎需要当时最先进的奔腾系列电脑支持,虽然勉强能够运行在486平台上,但制作出的游戏需要奔腾 级别的PC和SVGA视频卡才能达到最好效果。


 引擎:石头要塞(Stonekeep)

  发布时间:1990年-1995年

  代表游戏:石头要塞

石头要塞

  这款游戏自发布到正式面世经历了整整5年时间,最初被设定为286 PC平台上的引擎,使用软盘驱动器;但实际操作上根本无法做到,开发完成时已经要求最低386的PC配置以 及CD光盘驱动器的支持。虽然仅仅用作开发了一个游戏,但该引擎却首次引入了动态捕捉功能,你的视角会 影响到你的肢体动作。同时玩家被赋予了战斗时转身的能力,玩家从一个网格移动到另外一个网格,更具体 一点来说,玩家扮演的角色被从网格的边缘移动另外一个边缘,而这种做法导致的问题是,在转身时会产生 不对称的现象。

 

 

 引擎:XnGine

  发布时间:1995年

  代表游戏:上古卷轴:战斗尖顶(The Elder Scrolls:Battlespire)上古卷轴:匕首雨(Daggerfall)、终结者系列(Terminator Series,同样只有两作,分别是未来冲击和天网)

  虽然存在诸多问题,譬如DOS环境下开发导致在Windows 95环境中运行游戏时常出现模型裁剪问题导致玩家角色被3D环境卡住,但Xngine依然是世界第一款真正意义 上的3D引擎。在最初的几次失败的游戏制作尝试后,XnGine使用高分辨率图形以及符合3dfx的图形卡,营造 出巨大真实的游戏世界,代表作有包括著名的上古卷轴系列。

 

引擎:绝地(Jedi)

  发布时间:1995年

  代表游戏:星球大战:暗黑力量(Star Wars: Dark Forces)、无法无天(Outlaws)

星球大战:黑暗力量

  卢卡斯娱乐公司以敏感的嗅觉发现了3D游戏的市场潜力,虽然绝地引擎依然不是真正的3D引擎,但对比《毁 灭战士》和《毁灭公爵3D》,绝地引擎成功的创造了一个仿3D的游戏制作环境,允许从底层向上堆叠区域和 场景,这也是前两者无法做到的。

  当开发者创造使用绝地引擎创造一个3D模型时,它将从不同的角度(通常为45度)引入到位图上,其对每个 对象提供32个角度支持,各个对象会根据你观察距离的远近而调整。


引擎:雷神之锤(Quake)

  发布时间:1996年

  代表游戏:雷神之锤、邪恶巫师2(HeXen 2)、城市雇佣兵(Urban Mercenary)

  这是id Software公司第一款真正意义上的3D游戏引擎,开发人员在这款引擎上投入了大量精力。他们用刷子工具构 筑出地图的边界,以此建立起一个封闭的3D空间,引擎有一个预渲染的过程,以区分边界外面和里面的部分 ,然后抛弃不必要的部分。这种技术非常有效,它减少了一半甚至更多的多边形数量。为了进一步降低CPU 的运算量,雷神之锤引擎还引入了Z-缓冲技术,分辨出地图的哪些部分是可见的从而只渲染相应的部分。

  《雷神之锤》还包含3D光源和抗锯齿功能,同时支持3D加速和OpenGL,而不需要增加CPU过多的运算负担。 在Voodoo和PowerVR散装显卡逐渐成为PC主流后,《雷神之锤》的表现力大放异彩。也标志着3D引擎从此走 向成熟。


引擎:RenderWare

  发布时间:1996年

  代表游戏:《侠盗猎车手系列》(Grand Theft Auto series,包括3代和罪恶都市)

  Renderware可以说是3D引擎中的一朵奇葩,从发布之后被广泛运用于PC、GameCube、Wii、Xbox 360,、 PlayStation 3、GBA、PSP等几乎所有游戏平台的游戏开发中,被授权使用RenderWare开发的3D游戏超过500个,包括国人 所熟知的《仙剑奇侠传4》和《轩辕剑5》、《轩辕剑:汉之云》等等。 其优异的跨平台特性使得开发者可以忽略平台的差异利用Renderware接口高效开发上层功能,同时 Renderware也提供了针对不同平台的优化接口使其对硬件管线的利用达到最优状态。

  在Renderware的光芒被Epic的虚幻引擎掩盖以前,它是最受开发人员欢迎的3D引擎。开发人员可以实时的控 制技术和游戏进程,例如在不修改底层代码的情况下改变一个角色的着装,而不用重新渲染整个场景。开发 人员还可以实时控制基本物理工作,像跳跃和移动。

 

 

最早的3D引擎是1990年的星际恶棍/地下创世纪(Space Roger/Ultima Underworld)发展到1996年的Renderware,诞生了《侠盗猎车手》系列游戏。

  引擎: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数值)并从游戏世界中移除一个几何体。”

 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 普通话准考证丢了怎么办 信用卡还款逾期了怎么办 淮北建洗煤厂需要怎么办 建设工程不结算怎么办 考监理没有职称怎么办 公开招标两次招标失败怎么办 山东省植保员证怎么办 工伤没开病假单怎么办 邮储银行怎么办金卡 农机被交警查怎么办 广联达识别板筋负筋重叠怎么办 掌上品的钱怎么办 财务纠纷被起诉怎么办 牙齿补后疼痛怎么办 牙齿表面蛀了怎么办 虫牙全掉了怎么办 牙齿蛀光了怎么办 虫牙全部掉完了怎么办 不喜欢向人请教怎么办 单位不交公积金怎么办 电锯链条掉了怎么办 天津公积金怎么办外地转入 学籍档案涂抹了怎么办 气相点火失败怎么办 小米闹钟声音小怎么办 河北省监理员证怎么办 买的商铺烂尾了怎么办 钢表带被磨花了怎么办 资料员到期了怎么办 八大员挂靠社保怎么办 安许证三类人员不足了怎么办 考试准考证号写错了怎么办 科目一失约两次怎么办 钢筋送检两次不合格怎么办 公路原材料抽检不合格怎么办 混凝土回弹强度不合格怎么办 毕业证照片太丑怎么办 政审时找不到档案怎么办 劳动解除书开不出来怎么办 双流办健康证怎么办 户口本人数满了怎么办