从《Doom》到《Dunia》 回顾3D游戏引擎发展历程二

来源:互联网 发布:linux查看jdk环境变量 编辑:程序博客网 时间:2024/05/14 10:20

Quake III / id Tech 3

就像AMD与Intel,Nvidia与ATI,10年前,游戏引擎的战争主要集中在Quake III(现在被称为id Tech 3)与Unreal之间。

顾名思义,Quake III继承了Quake II的优良传统,但它不仅仅是id Software上一代引擎的完善,还使用了很多新的技术。新的引擎不再采用骨骼动画,而是使用了每顶点动画技术,不再执着于技术细节,这一改动为平滑动画铺平了道路。



Quake III加强了阴影效果,同时引入了着色器、曲面、32位色以及先进的网络功能(在当时来说)。这些效果的实现需要一块完整支持OpenGL的3D图形卡以及不低于300MHz的CPU频率——奔二或K6-2系列。



发布时间:1999年
值得关注的游戏:American McGee's Alice, Call of Duty, Medal of Honor: Allied Assault, Soldier of Fortune II: Double Helix, Star Wars Jedi Knight II: Jedi Outcast, Star Wars Jedi Knight: Jedi Academy, Quake III Arena, Return to Castle Wolfenstein, Wolfenstein: Enemy Territory

GeoMod

游戏中,大家总是期待着能破坏环境和地形,第一个满足玩家这种心态的游戏是Red Faction(红色派系)。John Slagel,《红色派系》的首席程序员,开发了GeoMod引擎,在游戏中重现物理规律,实现对对象的几何形状修改。



顾名思义,GeoMod的引擎根据游戏中的事件来改变对象的几何形状,其原理是通过一个实时的布尔效果消去游戏对象的几何形状。就像《红色派系》首席设计师Alan Lawrence向Gamespot描述的那样:“当一枚火箭弹击中墙壁,我们计算出这个形状然后从世界中减去它,我们对“这一块”进行了布尔运算——我们称之为GeoMod块——然后这一块就从世界中消失了。”

发布日期:2001年
值得关注的游戏:Red Faction, Red Faction II

Torque

Torque是一个完全的3D图形引擎,最早是用来制作FPS游戏Tribes 2(部落 2)。 从技术角度来讲Torque引擎的特点体现在以下几方面:
1)Torque核心(3D图形引擎)
       Torque库拥有一个标准组件的、可扩展的3D渲染系统。渲染引擎支持环境贴图,高德纳着色,体积雾,支持顶点光照和多“pass”光照,以及其他特效。
2)世界编辑器:
  集成了所见即所得的世界地图编辑功能;支持对象的构建、放置、大小调整以及旋转功能;能够编辑对象的控制属性;内建地形编辑器。
3)GUI编辑器:
  集成的、拖方式、所见即所得的GUI编辑器;可自定义控件;丰富的字体支持,包括“Unicode”支持。
4)TGE网络:
   提供了健壮的网络端代码、脚本;支持局域网和因特网的网络游戏开发,具有传统的C/S架构;自动封包的数据流管理;使用UDP和TCP数据传输协议;Ghost机制管理,支持必要对象的网络更新。
5)地形引擎:
  支持连续、无缝、自动“Mesh”细节生成的地形渲染;支持“MMX”加速的“Mip”贴图合成;支持地形、建筑物的光照贴图生成;支持基于高度分层的雾带渲染;支持地形纹理混合。
6)室内渲染引擎:
  支持基于“Portal”技术的室内渲染;支持与地形引擎的无缝集成。
7)Mesh引擎:
  支持纹理动画、纹理坐标动画、透明渐变动画;支持多骨骼的“Mesh”骨架动画;支持动态投射阴影;支持渐进式“Mesh”生成的自动细节生成;支持“Mesh”顶点变形动画。
8)其它:
  3D音效支持;“Ogg Theora”的视频回放。



尽管基于Torque开发的游戏不多,但不可否认Torque是一个功能强大而丰富的游戏引擎。



发布日期:2001年
值得关注的游戏:Penny Arcade Adventures, Tribes 2, Wildlife Tycoon

Serious

开发历时几年,Serious的主要目标是在任意时间都允许屏幕上出现巨大的空间和巨量的角色。这样一来,Serious Sam(英雄萨姆)就成了一个几乎不用停下来的极高自由度的FPS游戏。



Serious引擎主要有两部分:Serious编辑器和Serious建模。游戏模型可以从3D软件如Lightwave或3D Studio中导入,Serious编辑器的任务是创建世界和填充角色。



开始Serious引擎不支持像素和顶点着色,随后很快修正了这一点。



发布日期:2001年
值得关注的游戏:英雄萨姆(全系列)

Max-FX

Remedy Entertainment从1997年就开始Max-FX引擎的开发,直到2001年游戏Max Payne(马克思佩恩)才发布。它是一个基于DirectX 7.0优化的从底层向上纯硬件渲染的3D游戏引擎。

《马克思佩恩》最有名的是令人眼花缭乱的“子弹时间”——减慢游戏,这个特效在电影The Matrix(黑客帝国)中也出现过。



除了开发《马克思佩恩》,Futuremark还用Max-FX引擎开发了3DMark99,3DMark2000,和3DMark2001基准测试软件。



发布日期:2001年
值得关注的游戏:3DMark (99-2001), Max Payne

Unreal 2

老版Unreal引擎是以其上开发的游戏而命名,Unreal 2继承了上一代的优良传统,它最早在美国军队中出现。Unreal不仅仅是一个小小的更新,它高度改良了第一代引擎,全面添加了物理效果代码和提供64位支持。它还引入了一些新的特效,例如真正流淌的水。据说该引擎能处理以前10倍以上的多边形。



发布日期:2002年
值得关注的游戏:America's Army, Brothers in Amrs, Deus Ex: Invisible War, Lineage II(天堂 2), Magic: The Gathering - Battlegrounds, Postal 2, Thief: Deadly Shadows, Tom Clancy's Rainbow Six 3(彩虹六号 3), Splinter Cell(细胞分裂), Ghost Recon 2, and Ghost Recon Advanced Warfighter, Tribes: Vengeance, Unreal II: The Awakening, Unreal Tournament 2003 and 2004, XIII

Gamebryo

Gamebryo引擎是NetImmerse引擎的后继版本,是由Numerical Design Limited最初开发的游戏中间层,在与Emergent Game Technologies公司合并后,引擎改名为Gamebryo Element。



Gamebryo Element引擎是由C++编写的多平台游戏引擎,他支持的平台有:Windows、Wii、PlayStation 2、PlayStation 3、Xbox和Xbox 360。

虽然Gamebryo的渲染引擎部分是私有的,但他允许使用者添加自己的图形绘制代码。Gamebryo包含了长达3500页的说明书,然而关于Maya的部分却不完整,有的已经过时。

Emergent为部分客户提供开发套件,但不提供这些套件的源代码,而且套件只提供给EGT公司代表面谈后认为可以提供的客户。

Gamebryo技术细节
  在它的核心中,Gamebryo游戏引擎是一套模块化的C++库。游戏开发者还可以扩大这些库来为他们的游戏创建自定义功能。购买一个完整的系统授权,游戏程序员可以访问源代码,从而个性化和扩大标准库。
  Gamebryo极为灵活。游戏开发者可以自定义渲染的着色算法,支持各种选择以使艺术家们的工作在不影响工程师的工作的情况下变得很容易。

Gamebryo游戏引擎的最新特点:
  * 完全支持Wii并扩展了对DirectX 10的支持
  * 新的DCC工具 - 一个特制的SoftImage|XSI 6.5导出插件
  * 重新设计的几何系统以优化每个平台的性能
  * 一个新的与Floodgate数据流处理引擎联系在一起的网格修改系统,让变形技术或蒙皮技术和粒子模拟等方面的性能得到改进
  * 拓展了Emergent Terrain编辑器和实时系统,包括支持PhysX
  * 改进了Animation System 的性能,增强了Scene Designer以建立团队合作
  * 持续的关注可用性和生产率,比如对更新后的主机SDK的支持,以及目前对编译程序警告级别的特殊处理



发布日期:2003年
值得关注的游戏:

      轴心国和同盟军 2004年 PC TimeGate Studios Atari
  邪神的呼唤:地球黑暗角落 2006年 Xbox, PC Headfirst Productions Bethesda Softworks, 2K Games
  卡米洛特的黑暗年代 2001年 PC Mythic Entertainment Vivendi Universal Games
  上古卷轴IV:湮没 2006年 PC, Xbox 360, PS3 Bethesda Softworks 2K Games
  上古卷轴IV:战栗孤岛 2007年 PC, Xbox 360 Bethesda Softworks 2K Games
  帝国帝国II 2005年 PC Mad Doc Software Sierra Entertainment
  地球帝国III 2007年 PC Mad Doc Software
  辐射3 2008年 PC, Xbox 360, PS3 Bethesda Softworks
  自由力量大战第三帝国 2005年 PC Irrational Games Vivendi Universal Games
  行会2 2006年 PC 4Head Studios
  可汗II:战争之王 2004年 PC Gathering Global Star Software, Take 2 Interactive
  花花公子:情色大亨 2005年 PS2, PC, Xbox Cyberlore Studios Inc. ARUSH Entertainment
  红海 2007年 PC Collision Studios Digital Entertainment Pool
  文明4 2005 PC, Mac Firaxis 2K Games
  席德梅尔的海盗 2004年 PC, Xbox Firaxis 2K Games, Atari
  席德梅尔的铁路 2006年 PC Firaxis 2K Games
  至尊交响乐 2008年 PC Ceidot游戏工作室
  战锤Online:决战世纪 2008年 PC EA Mythic Electronic Arts
  动物园大亨2 2004年 PC Blue Fang Games Microsoft Game Studios
  野生动物园大亨2 2006年 PC Deep Silver B-Alive
  星辰变OL 2008年 PC Ceidot游戏工作室
  使用NetImmerse的游戏
  游戏 年份 平台 开发者 发行商
  卡米洛特的黑暗年代 2001年 PC Mythic Entertainment Vivendi Universal Games
  上古卷轴III:晨风 2002年 PC, Xbox Bethesda Softworks 育碧公司
  上古卷轴III:审判席 2002年 PC, Xbox Bethesda Softworks 育碧公司
  上古卷轴III:血月 2002年 PC, Xbox Bethesda Softworks 育碧公司
  安特罗皮亚世界 2003年 PC MindArk
  自由力量 2002年 PC, Mac Irrational Games Electronic Arts
  Futurama 2003 Xbox, PS2 Unique Development Studios Sweden
  波斯王子3D 1999年 PC, Dreamcast Red Orb Entertainment
  星际迷航:舰桥指挥官 2002 PC Totally Games Activision
  动物园大亨2 2004年 PC Microsoft Game Studios
  亚瑟王传奇:见习骑士 2004年 XBox Micro?ds

Doom 3 / id Tech 4

现在被称为id Tech 4,Doom 3引擎重新书写了大量id Tech 3的代码——尽管不想这样,但id Soft决定从C平台换到C++平台,全面的更新是无法避免的。



可以说,Doom 3推动了硬件的发展。由于需要DirectX 8.0支持,GeForce 3/Radeon 8500或更高级的3D图形卡是必需的。这主要是因为增加了统一照明和阴影,每个表面将通过相同的管线渲染,大多数轻表面也进行了实时、更符合实际的阴影,代价是只能够渲染软阴影。为了得到这个效果,投影光被用来制造软阴影的错觉。



很长一段时间,Doom 3是一个流行的性能指标,而评测基准,则被更为苛刻的Crysis取代。

发布日期:2004年
值得关注的游戏:Doom 3, Enemy Territory: Quake Wars, Prey, Quake 4

Source

Source引擎是由Valve电子软件公司开发的3D绘图引擎,其中与用了大量的3D设置,并且对其他的游戏开发者开放授权。这个引擎提供关于渲染、声效、动画、消锯齿、界面、美工创意和物理模拟方面的支持。

物理系统方面,Source引擎是基于Havok引擎的,但是进行大量的几乎重写性质的改写,并不和以前一样,可以让玩家在单人抑或是联网游戏中体验到额外的真实感.人物的死亡可以用称为 布娃娃物理系统 的部分控制,引擎可以模拟物体在真实世界中的交互作用,例如从楼上摔下来或者是背靠着墙死去,这在以前的Valve引擎中是做不到的.并且这一修改并不会占用大量资源空间。Source引擎中还加入了自由车辆元素,者在半条命单人任务中出现车子可以做到在真实的环境下行驶,并自由驾驶,不会像第一部中只能框定在轨道上。

Source引擎的世界框架,这会在你打开游戏时进行预制,预制出来的框架非常像真实的世界,不再像以前的版本一样,感觉人在一个大方盒里行动,柔滑贴图正是它的优点。

Source引擎可以让游戏中的人物模拟情感和表达。每个人物的语言系统是独立的,在编码文件的帮助下,和他们的交流就像真实世界中一样,非常丰富。Valve在每个人物的脸部上面添加了42块“数码肌肉”来实现这一功能。嘴唇的翕动也是一大特性,因为根据所说话语的不同,嘴的形状也是不同的,这一真实情况受到了大家的认可。

Source引擎尽力让一切都模拟真实世界的情况:动画贴图可以和其他动画贴图结合产生新的效果,而一个被称为反转运动学(Inverse Kinematics)的功能能让人物在不同情况下四肢的运动都是不同的,这个系统让人在左右观看和受伤时格外的真实。



就像半条命在一样90年代轰动了一样,但如果把半条命放到今天,那便不再是什么轰动.一个问题展现出来,玩家如果想要享受现代的科技成果,就要有一块当下比较流行的显卡进行支持的游戏引擎,Source引擎的响应性让半条命2比前一代更加的具有游戏性,不过许多人只认为Source是Valve的新一代引擎,却忽略了它在绘图渲染的功效,Source引擎的真正特性往往人们是只能认识表面的。

Source引擎针对半条命的修改所产生的飞跃是显而易见的,物理系统真实性和渲染效果均有大幅度提高。现在的引擎渲染是基于阴影的,且允许通过控制图像来产生大量悦目的效果.Source引擎也像现在流行的大游戏一样,舍弃了我们在7,8年前使用的Software和OpenGL,而使用正在流行的DirectX进行驱动。



发布日期:2004年
值得关注的游戏:Counter Strike: Source, Dark Messiah of Might and Magic, Garry's Mod,Half Life 2, Left 4 Dead, Portal, Postal III

CryEngine

据说Crytek最早开发CryEngine是为了演示X-Isle,以展示Nvidia的Geforce 3图像是多么的真实。后来,他们又开发了Far Cry——一个似乎无处不在的热门游戏。CryEngine最早只支持PC,现在它已发展为一个多平台的引擎。



CryEngine营造了高级的视觉效果,由于采用像素着色,CryEngine在Far Cry里制造出了真正切合实际的水面。浸泡的茂密植物和水面的倒影让你不得不感叹图像的真实性。
基于CryEngine,Crytek开发了硬件杀手:Crysis,一个重量级的DirectX 10游戏(它也支持DX 9)。这个游戏目前仍被广泛用于测试。



发布日期:2004年
值得关注的游戏:Crysis, Crysis Warhead, Far Cry

RAGE

Rockstar Advanced Game Engine,简称RAGE,是由RAGE Technology Group同Rockstar合作开发,以取代Rockstar原先的游戏引擎RenderWare。

RAGE是一个结合的渲染框架,包括物理引擎、音频引擎、网络支持、动画引擎、脚本语言等,其中有些功能来自其他引擎,例如Euphoria引擎(动画)和Bullet物理引擎——后来这两者部分被纳入RAGE引擎。



Rockstar的主要目标是使物体感觉更真实,特别是车辆超速或在不同的区域步行时。此外,天气效果也是一个重要组成部分。在Grand Theft Auto IV(侠盗猎车 4)里——RAGE的第2部游戏,第一款游戏是Table Tennis——你能感受到这一切。
Rockstar还研究更切合实际的爆炸,主要是通过粒子效果。

发布日期:2006年
值得关注的游戏:Grand Theft Auto IV, Midnight Club: Los Angeles, Rockstar Presents Table Tennis

Unreal 3

Unreal 3是一个完整的支持DirectX 10的游戏引擎,支持PC、XBOX360、PS 3,开发人员说:“Unreal引擎的各个方面都是为了简便设计内容和简单编程。”

就像Rockstar的RAGE一样,Unreal 3是一个技术大杂烩。主要包括一个多线程渲染系统,64位HDR(High Dynamic Range,即高动态范围)色彩渲染管线,各种物理效果采用了Nvidia的PhysX,还有粒子效果;动画方面,拥有一个复杂的骨骼动画系统支持全网格高达4块骨头影响每个顶点和骨骼LOD技术支持。此外,还有大量的其他功能。



Unreal 3基础上已经有很多款游戏。其中一个就是Unreal Tournament 3,Unreal Tournament系列第四部,Unreal系列第八部。值得一提的是Unreal Tournament 3是最早支持AGEIA的(现在属于Nvidia) PhysX的AAA游戏之一。



本站有一篇该引擎初步测试的文章:Unreal 3引擎初步测试

发布日期:2007年
值得关注的游戏:America’s Army 3.0, American McGee’s Grimm, Army of Two, Batman: Arkham Asylum, Brothers in Arms: Hell’s Highway, Bioshock 1 & 2, DC Universe Online, Duke Nukem Forever (*snicker*), Gears of War 1 & 2, Leisure Suit Larry: Box Office Bust, Mass Effect 1 & 2, Mirror’s Edge, Tom Clancy’s Rainbow Six: Vegas 1 & 2, Unreal Tournament 3
Euphoria

由NaturalMotion公司开发,Euphoria是一个动画引擎,创建动画极其简便。据其开发人员介绍,Euphoria结合了人工智能、生物力学、物理学,最终结果是得到了更接近自然的人或动物——相比布娃娃型的对象。

部分原因是,Euphoria不仅模拟了骨架,而且模拟了肌肉和神经系统。通过预先定义的动画,自适应智能控制模块,Euphoria的动画非常真实。



Rocksta的RAGE引擎吸收了部分Euphoria。但是NaturalMotion公司强调Euphoria不是一个中间件。你可以通过点击这里观看Euphoria的演示。

发布日期:2007年
值得关注的游戏:Grand Theft Auto IV, Star Wars: The Force Unleashed

Frostbite

Frostbite引擎是EA DICE为其制作的《战地:叛逆连队》量身定做的,其基础特性均迎合了战地:叛逆连队的特点。同时,Frostbite引擎也有很大的灵活性,稍加修改就可以满足不同的需要。



Frostbite引擎支持制作可见范围最大32x32km,可活动范围最多4x4km的大地图。Frostbite引擎能够为远景提供精细的模型和贴图,为游戏中的昼夜更迭、远方的地平线提供逼真的效果。在做这些工作时,Frostbite引擎能够较合理地分配系统资源,不会占用过大的内存。



Frostbite引擎有一套较完善的可破坏物件系统。较其它引擎,用Frostbite引擎制作破坏物件更简单,在游戏中渲染破坏效果消耗的系统资源更少,因此可用来制作“一切皆可破坏”的地图。而且,不仅是普通物体,地面也是可以破坏的。
 


“HDR声效”(HDR Audio)是Frostbite的独家技术,其工作原理与画面方面的HDR特效类似。在游戏运行时,程序可以动态调节不同声效的音量大小,从而通过对比来突出音量较大的声效。例如在爆炸发生时,车内广播的音效会被自动调低,以突出爆炸的响声。

Frostbite中使用了Havok引擎协助表现仿真的物理效果。平台方面,Frostbite引擎在XBox 360、PC上支持DirectX 9.0c,于PS3上使用libGCM,于Windows Vista则可支持Direct3D 10。09年4月,EA DICE宣布已将DirectX 11代码写入Frostbite,这意味着正在研发的战地:叛逆连队2很有可能成为最早的支持DirectX 11的游戏之一。

发布日期:2008年
值得关注的游戏:Battlefield: Bad Comany 1 & 2, Battlefield 1943

Anvil / Scimitar

据Claude Langlais,Ubisoft Montréal公司的技术总监介绍,用于Assassin's Creed(刺客信条)的大多数引擎和工具是从空白开始开发的。正因如此,加上一个专门的团队开发、支持和发展这些工具,Anvil引擎(以前被称为Scimitar)诞生了。

除了灵活的工具,流体动画也是Anvil引擎早期的目标之一——在《刺客信条》里,当攀爬建筑物或跳跃时,你能明显看到这些动画。为了达到这个目标,Anvil必须是多线程的引擎,这种引擎还允许开发人员创造一个动态载入的游戏世界。



正如越来越多的现代游戏引擎那样,Anvil采用了一部分中间件,主要用于碰撞检测和寻路AI,此外,还采用了Autodesk的HumanIK中间件以提高动画和运动力学效果。

关于中间件,前文也提到不少,是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。详细的请点击这里。



发布时间:2008年
值得关注的游戏:Assassin's Creed, Prince of Persia(波斯王子), Shaun White Snowboarding

Dunia

迄今为止Dunia仅仅被用于Far Cry 2,Ubisoft(育碧)公司表示计划使用这个引擎开发未来的几个项目。虽然Dunia和CryEngin同出一家,但只有不到3%的CryEngin代码被重新利用到Dunia上。

Dunia的硬件要求要远远低于CryEngine 2,后者曾被用于硬件杀手Crysis。首先,Dunia对多核心处理器提供了更好的支持,同时支持DirectX 9和DirectX 10。Dominic Guay,Far Cry 2的技术总监,在接受Gamasutra采访中说,Far Cry 2可以运行在采用了GeForce 6600显卡的奔4级别PC上。



破坏环境,昼夜交替,随机AI敌人,多人地图支持,充满活力的音乐背景,这一切尽在Dunia。

发布时间:2008年
值得关注的游戏:Far Cry 2

本文完毕

原创粉丝点击