电脑游戏开发与编程2_第1页
电脑游戏开发与编程2_第2页
电脑游戏开发与编程2_第3页
电脑游戏开发与编程2_第4页
电脑游戏开发与编程2_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电脑游戏开发与编程2第1页/共47页概述游戏引擎是什么?游戏引擎的特点游戏引擎的功能游戏引擎的历史游戏引擎的处理流程一些专用术语2D、2.5D、3D引擎FPS(游戏的)脚本编程常见游戏引擎现在的游戏引擎效果第2页/共47页游戏引擎是什么?定义一:游戏引擎,简而言之,就是控制所有游戏功能的函数(类)库,从计算碰撞、物理系统和物体的相对位置,到接受玩家的输入,以及按照正确的音量输出声音等等。定义二:游戏引擎是一个为运行某一类游戏的机器设计的能够被机器识别的代码(指令)集合。它像一个发动机,控制着游戏的运行。一般而言,游戏=(引擎+程序)+资源(图像、声音、动画等)第3页/共47页游戏引擎的特点游戏引擎是面向游戏应用的,即音效处理、物理效果、图形效果一个游戏引擎适用于某一类游戏,引擎的架构和通用性越好,适用的操作平台和游戏类型就越多。第4页/共47页引擎制作时间周期长引擎相当于游戏的框架,框架打好后,关卡设计师、建模师、动画师只要往里填充内容就可以了。因此,在3D游戏的开发过程中,引擎的制作往往会占用非常多的时间,《马科斯·佩恩》的MAX-FX引擎从最初的雏形FinalReality到最终的成品共花了四年多时间,LithTech引擎的开发共花了整整五年时间,耗资700万美元,Monolith公司(LithTech引擎的开发者)的老板詹森·霍尔甚至不无懊悔地说:“如果当初意识到制作自己的引擎要付出这么大的代价的话,我们根本就不可能去做这种傻事。没有人会预料得到五年后的市场究竟是怎样的。”正是出于节约成本、缩短周期和降低风险这三方面的考虑,越来越多的开发者倾向于使用第三方的现成引擎制作自己的游戏,一个庞大的引擎授权市场已经形成。第5页/共47页游戏引擎的功能—渲染渲染是引擎最重要的功能之一,负责处理3D世界的数据以玩定或相机所在的视点渲染3D世界。当3D模型制作完毕之后,美工会按照不同的面把材质贴图赋予模型,这相当于为骨骼蒙上皮肤,最后再通过渲染引擎把模型、动画、光影、特效等所有效果实时计算出来并展示在屏幕上。渲染引擎在引擎的所有部件当中是最复杂的,它的强大与否直接决定着最终的输出质量。第6页/共47页游戏引擎的功能—动画其次是动画,目前游戏所采用的动画系统可以分为两种:一是骨骼动画系统,一是模型动画系统,前者用内置的骨骼带动物体产生运动,比较常见,后者则是在模型的基础上直接进行变形。引擎把这两种动画系统预先植入游戏,方便动画师为角色设计丰富的动作造型。第7页/共47页游戏引擎的功能—物理提供物理系统,这可以使物体的运动遵循固定的规律,例如,当角色跳起的时候,系统内定的重力值将决定他能跳多高,以及他下落的速度有多快,子弹的飞行轨迹、车辆的颠簸方式也都是由物理系统决定的。

第8页/共47页游戏引擎的功能—人工智能(AI)人工智能模块为游戏中非玩家控制角色的行为和决策提供智能支持。它在现代游戏引擎中越来越重要,直接影响到游戏的可玩性和游戏设计的复杂性。第9页/共47页游戏引擎的功能—硬件负责玩家与电脑之间的沟通,处理来自键盘、鼠标、摇杆和其它外设的信号。如果游戏支持联网特性的话,网络代码也会被集成在引擎中,用于管理客户端与服务器之间的通信。第10页/共47页游戏引擎的基本架构游戏引擎分为两大部分:引擎核和外部接口引擎核涉及所有的算法,为游戏引擎的主体外部引擎提供了引擎与外部的所有接口,使得开发者方便地进行功能护展第11页/共47页数学模块:提供向量、矩阵、平面、曲面等计算几何和图形学相关的数据结构和算法物理模块:包含物体的运动、摩擦、弹性以及碰撞检测等第12页/共47页游戏引擎的处理流程第13页/共47页2D引擎2.5D引擎3D引擎第14页/共47页2D引擎2D图形游戏最显著的特征是所有图形元素是以平面图片的形式制作的,地图无论是拼接的还是整图制作,其地表、建筑都是单张的地图元素构成的。而动画则是以一张一帧的形式预先存在的。这些图形元素最终都会以复杂的联系方式在游戏中进行调用而实现游戏世界中丰富的内容第15页/共47页3D引擎3D技术把游戏世界中的每个物体看作一个个立体的对象,由若干个几何多边体构成。为了显示对象,你在文件中存储的是对对象的描述语句:对象由哪几个多边体组成,它们之间的位置关系,以及在哪个部位使用哪个贴图等等描述性内容。在显示时,还得通过程序对这些语句的解释来实时地合成一个物体。通过若干个立体几何和平面几何公式的实时计算,玩家在平面的显示器上还能以任意的角度来观看3D物体。如果构成物体的多边形越多,那么合成时需要的计算量就越大。贴图是一些很小的图像文件,也被称为"材质"。如果说多边体是物体的骨架,那么贴图就是物体的皮肤。即使仅仅是图形显示上的变化,在3D引擎下世界构成的任何事情也要以3D世界观来对待。

在3D世界观中需要了解三件事:

3D的特点

●物体是真实占有空间的

●任何人的视点(摄像机)是可以任意移动并改变角度的

●要了解光的运用

第16页/共47页2.5D同时具备了2D与3D游戏特点的游戏我们称之为2.5D游戏。一种是3D的地图,2D的精灵(角色、npc等),例如《ro仙境传说》;一种是2D地图,3D精灵,例如《征服》。但在地图设计制作上,目前还没有2.5D之说,至多为伪3D。以《最终幻想7》(FF7或太空战士七)为例,该作的地图制作采用了3D与伪3D技术的结合。在世界地图上行动时,使用的是真3D技术,所以该地图具备了3D技术的几大特点:物体立体占有空间,视角可变换,光照会随视角移动而变化,而其中最显而易见的便是视角的变换。而在FF7的场景地图中,在同一场景中,其视角是不可变的。其实FF7场景地图所采用的是3D建模、上材质,再进行2D渲染整合的伪3D的技术,这种技术也可称为“2D渲染”技术。伪3D的好处在于比较容易将制作物的质感给表现出来,而纯2D技术要做到这一点就需要特别专业的技术了。另外,在视角不可变的场景地图中,FF7却实现了精灵(角色、npc)的近大远小透视效果。这种效果就是指在有透视(纵伸感)的游戏场景中,移动的角色会随着场景的向前景或背景方延伸而显得渐大或渐小。这是需要配合程序方面来进行制作的,所以在程序方面会有一定的限制。第17页/共47页三大主流商业游戏引擎UnrealEngine(虚幻)EpicGames《虚幻竞技场》系列、《分裂细胞》系列、《虚拟竞技场》等第一人称射击游戏,第三人称动作游戏,角色扮演游戏Doom-QuakeEngineIDLithTechEngineMonolith《F.E.A.R》第18页/共47页著名的开源引擎OGRECrystalspaceIrrlichtQuake第19页/共47页游戏引擎的历史引擎的诞生(1992年~1993年)1992年,3DRealms公司/Apogee公司发布了一款只有2兆多的小游戏——《德军司令部》(Wolfenstein3D)它在X轴和Y轴的基础上增加了一根Z轴,在由宽度和高度构成的平面上增加了一个向前向后的纵深空间

第20页/共47页《德军司令部》并非第一款采用第一人称视角的游戏,在它发售前的几个月,Origin公司就已经推出了一款第一人称视角的角色扮演游戏——《创世纪:地下世界》(UltimaUnderworld)。《地下世界》的引擎支持斜坡,地板和天花板可以有不同的高度,分出不同的层次,玩家可以在游戏中跳跃,可以抬头低头,这些特性Wolfenstein3D引擎都无法做到,而且从画面上看,《德军司令部》更接近漫画风格而不是传统的像素画面。第21页/共47页DOOM引擎是第一个被授权的引擎《投影者》、《异教徒》、《毁灭巫师》、《毁灭战士》均由ID公司的DOOM引擎开发在此之前引擎只是作为一种自产自销的开发工具,从来没有哪家游戏商考虑过依靠引擎赚钱,Doom引擎的成功无疑为人们打开了一片新的市场第22页/共47页引擎的转变(1994年~1997年)在引擎的进化过程中,肯•西尔弗曼于1994年为3DRealms公司开发的Build引擎是一个重要的里程碑。由Build引擎开发第一个游戏是《毁灭公爵》,它已经具备了今天第一人称射击游戏的所有标准内容,如跳跃、360°环视以及下蹲和游泳等特性,此外还把《异教徒》里的飞行换成了喷气背包,甚至加入了角色缩小等令人耳目一新的内容。在Build引擎的基础上先后诞生过14款游戏,例如《农夫也疯狂》、《阴影武士》和《血兆》等,《七侠五义》Build引擎的授权业务大约为3DRealms公司带来了一百多万美元的额外收入,3DRealms公司也由此而成为了引擎授权市场上的第一个“暴发户”。不过从总体来看,Build引擎并没有为3D引擎的发展带来任何质的变化,突破的任务最终由idSoftware公司的《雷神之锤》(Quake)完成了第23页/共47页Quake引擎是当时第一款完全支持多边形模型、动画和粒子特效的真正意义上的3D引擎,而不是Doom、Build那样的2.5D引擎。此外Quake引擎还是连线游戏的始作俑者,尽管几年前的《毁灭战士》也能通过调制解调器连线对战,但最终把网络游戏带入大众的视野之中的是《雷神之锤》,是它促成了电子竞技产业的发展。

第24页/共47页一年之后,idSoftware公司推出《雷神之锤2》,一举确定了自己在3D引擎市场上的霸主地位。《雷神之锤2》采用了一套全新的引擎,可以更充分地利用3D加速和OpenGL技术,在图像和网络方面与前作相比有了质的飞跃Raven公司的《异教徒2》(HereticII)和《命运战士》(SoldierofFortune)、Ritual公司的《原罪》(Sin)、Xatrix娱乐公司的《首脑:犯罪生涯》(Kingpin:LifeofCrime)以及离子风暴工作室发布的《安纳克朗诺克斯》(Anachronox)都采用了QuakeII引擎。第25页/共47页《虚幻》(Unreal)正当QuakeII独霸整个引擎市场的时候,EpicMegagames公司(即现在的Epic游戏公司)的《虚幻》(Unreal)问世了。

除了精致的建筑物外,游戏中的许多特效即便在今天看来依然很出色,荡漾的水波,美丽的天空,庞大的关卡,逼真的火焰、烟雾和力场等效果。从单纯的画面效果来看,《虚幻》是当之无愧的佼佼者Unreal引擎可能是使用最广的一款引擎,在推出后的两年之内就有18款游戏与Epic公司签订了许可协议,这还不包括Epic公司自己开发的《虚幻》资料片《重返纳帕利》,其中比较近的几部作品如第三人称动作游戏《北欧神符》(Rune)、角色扮演游戏《杀出重围》(DeusEx)以及永不上市的第一人称射击游戏《永远的毁灭公爵》(DukeNukemForever),这些游戏都曾经或将要获得不少好评第26页/共47页

Unreal引擎的应用范围不限于游戏制作,还涵盖了教育、建筑等其它领域。DigitalDesign公司曾与联合国教科文组织的世界文化遗产分部合作采用Unreal引擎制作过巴黎圣母院的内部虚拟演示。ZenTao公司采用Unreal引擎为空手道选手制作过武术训练软件,另一家软件开发商VitoMiliano公司也采用Unreal引擎开发了一套名为“Unrealty”的建筑设计软件,用于房地产的演示。第27页/共47页引擎的革命

游戏的图像发展到《虚幻》这里已经达到了一个天花板的高度,接下去的发展方向很明显不可能再朝着视觉方面进行下去。前面说过,引擎技术对于游戏的作用并不仅局限于画面,它还影响到游戏的整体风格两部划时代的作品同时出现在1998年——Valve公司的《半条命》(Half-Life)和LookingGlass工作室的《神偷:暗黑计划》(Thief:TheDarkProject)曾获得无数大奖的《半条命》采用的是Quake和QuakeII引擎的混合体,Valve公司在这两部引擎的基础上加入了两个很重要的特性:一是脚本序列技术,这一技术可以令游戏以合乎情理的节奏通过触动事件的方式让玩家真实地体验到情节的发展,这对于诞生以来就很少注重情节的第一人称射击游戏来说无疑是一次伟大的革命。第二个特性是对人工智能引擎的改进,敌人的行动与以往相比明显有了更多的狡诈,不再是单纯地扑向枪口。这两个特点赋予了《半条命》引擎鲜明的个性,在此基础上诞生的《要塞小分队》、《反恐精英》和《毁灭之日》等优秀作品又通过网络代码的加入令《半条命》引擎焕发出了更为夺目的光芒。

第28页/共47页在人工智能方面真正取得突破的游戏是LookingGlass工作室的《神偷:暗黑计划》,游戏的故事发生在中古年代,玩家扮演一名盗贼,任务是进入不同的场所,在尽量不引起别人注意的情况下窃取物品。

《神偷》采用的是LookingGlass工作室自行开发的Dark引擎,Dark引擎在图像方面比不上《雷神之锤2》或《虚幻》,但在人工智能方面它的水准却远远高于后两者。游戏中的敌人懂得根据声音辨认你的方位,能够分辨出不同地面上的脚步声,在不同的光照环境下有不同的目力,发现同伴的尸体后会进入警戒状态,还会针对你的行动做出各种合理的反应,你必须躲在暗处不被敌人发现才有可能完成任务,这在以往那些纯粹的杀戮游戏中是根本见不到的。第29页/共47页受《半条命》和《神偷:暗黑计划》两款游戏的启发,越来越多的开发者开始把注意力从单纯的视觉效果转向更具变化的游戏内容。如《杀出重围》第30页/共47页从2000年开始3D引擎朝着两个不同的方向分化,一是如《半条命》、《神偷》和《杀出重围》那样通过融入更多的叙事成分和角色扮演成分以及加强游戏的人工智能来提高游戏的可玩性。二是朝着纯粹的网络模式发展,在这一方面,idSoftware公司再次走到了整个行业的最前沿,他们意识到与人斗才是其乐无穷,于是在QuakeII出色的图像引擎的基础上加入更多的网络成分,破天荒推出了一款完全没有单人过关模式的纯粹的网络游戏——《雷神之锤3竞技场》(QuakeIIIArena),它与Epic公司稍后推出的《虚幻竞技场》(UnrealTournament)一同成为引擎发展史上的一个转折点。第31页/共47页在1998年到2000年期间迅速崛起的另一款引擎是Monolith公司的LithTech引擎LithTech引擎的开发共花了整整五年时间,耗资700万美元,1998年LithTech引擎的第一个版本推出之后立即引起了业界的主意,为当时处于白热化状态下的《雷神之锤2》vs.《虚幻》之争泼了一盆冷水。正是由于过于高昂的开发代价,2002年Monolith公司决定单独成立一个LithTech公司,以LithTech引擎的授权许可作为主要业务,希望借此捞回一些成本。

2000年LithTech公司推出了引

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论