您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 游戏设计--3开发环境与引擎
第三章游戏开发环境概述:游戏平台,游戏开发语言及环境,游戏引擎介绍重点:明确游戏设计的目标设备平台,学会选择合适的开发语言和工具,学会选择合适的图形处理函数库目的:了解游戏开发环境的相关知识3.1游戏平台电子游戏主机:任天堂NGC、世嘉DC,FC,次世代游戏主机:索尼PS/2、微软Xbox等通用计算机:专业主机、Mac、PC手持设备:专用系统:GB、GBA等移动电话:NOKIA、三星等PDA3.2程序语言与开发环境:程序语言IDE集成开发环境C/C++TurboC、VC++、GNUC++BasicVBJavaJBuilder、VJ++、Eclipse脚本语言Flash&ActionscriptIE&Javascript3dsMaxscript3.3图形图像处理3.3.1图形图像处理函数标准化的必要性有了标准化函数后,图形软件的开发者就不需要再去考虑底层的硬件问题,而只须调用合适的函数就可以了。硬件开发商也只需注重硬件“加速”方面的开发就可以了。3.3.2OpenGLOpenGL是输出到图形硬件的专业软件编程接口,只处理图形,跨平台问题,是主要的图形处理方式之一。3.5游戏引擎什么是游戏引擎:用于控制游戏功能的主程序,从渲染图形、计算碰撞、物理系统和物体的相对位置,到接受玩家的输入,以及按照正确的音量输出声音等都要用引擎完成。简言之:游戏引擎是对底层功能的简单封装。这个底层功能包括平台API(应用程序调用接口)、渲染API、音频API、流媒体API等。3.5.1引擎的重要处理环节1)成像渲染:美工把所有模型制完后,需程序员将这些模型、动画、光影效果,在系统中计算出来,并在场景中显示出来2)动画系统:*模型关键帧动画*蒙皮骨骼动画3)物理系统:重力、速度、碰撞探测。使用对象属性(动量、扭矩或者弹性)来模拟刚体行为,得到更加真实的结果,开发人员也比编写行为脚本更加容易掌握4)音频处理:音乐、音效5)内存管理:显存、内存等重要参数的管理6)网络处理:一般游戏需要支持TCP/UDP协议7)人工智能与导航:NPC、路标等的处理8)输入:输入接受与转换3.3.3DirectXDirectX是微软的一整套API,全面处理2D、3D图形图像,声音的输入输出,各种外设的驱动及可靠的通信服务,使各种基于DirectX开发的游戏和软件具有最好的兼容性和适应性。由于DirectX专为Windows所做,图像处理在windows下效率高于OpenGL,但不能跨平台。3.4常用应用软件3D建模及动画:MAYA、3dsMax绘图及纹理:Photoshop、DeepPaint3D编辑合成:Shake、Combustion、DigitalFusion文档处理:Visio、Word引擎编辑器:Unreal3.5.2游戏引擎的发展史引擎的诞生(1992年-1993年)《Wolfenstein3D》FPS引擎,《DOOM》引擎的转变(1994年-1997年)《QuakeII》引擎许可模式,《Unreal》引擎的革命(1998年-2000年)《Half-Life》,《Thief》引擎的发展方向:融入更多叙事成分和角色扮演:增加可玩性朝网络模式发展:真人对抗,如ID《雷神之锤III竞技场》支持辐射光影渲染技术:如《MAXPAYNE》MAX—FX引擎任意改变几何体形状的3D引擎:如(红色派系)Geo—Mod引擎次世代游戏引擎,例如EPIC公司的次世代Unreal3.0引擎返回C/C++无疑是公认的最强大的开发语言,其编译出来的程序也具备优异的执行速度,当然,开发和测试就相对比较复杂,需要较大的投入。C++语言是一种编译型语言,需要经过编译过程转换成机器语言,在执行时直接执行机器码,所以速度相当快。为了使用C++语言,就需要有C++语言的编译器,原始的C++语言编译器都是命令行的,使用不便。Borland公司首次提出集成开发环境(IntegratedDevelopmentEnvironment.IDE)概念,并推出TurboC环境,把编辑、编译、调试放在一个环境下执行,极大地提高了程序员的工作效率。微软公司推出VisualC++用来在Windows环境下开发应用程序,比TurboC工具的效率更高。返回小结游戏设计必须先明确目标设备平台选择合适的开发环境、语言和工具合适的图形处理函数库对游戏开发具有重要意义跨平台OpenGL、Windows的DirectX什么是游戏引:是对底层功能的简单封装游戏引擎要完成的重要处理环节游戏引擎的发展历史和方向次世代主机Java是在跨平台方面做的最好的系统,而且Java提供了最丰富的开发工具,以及丰富的符合软件工程的设计工具。Java之所以具备跨平台的特点,是因为Java的编译并没有将代码编译成计算机可以直接执行的机器代码,而是一种特殊的二进制代码,称为ByteCode,而这些二进制代码需要在一种被称为Java虚拟机的系统上运行,因此只要一个平台下具备Java虚拟机,它就可以执行Java代码。但是执行的时候需要Java虚拟机的中间翻译过程,而不是直接执行二进制机器代码,使得Java代码的执行速度比较慢。对于游戏来讲,由于需要处理大量的图片数据,就存在效率问题。其实Java之所以在游戏开发中效率较低,关键的问题还是在于底层绘图系统的支持,由于Java的跨平台特性,Java本身不会去开发直接和操作系统密切相关的代码,比如微软的DirectX的相关接口。返回Basic简单易用,而且VisualBasic提供了丰富的Windows组件,有些组件可以直接访问系统硬件,能够以比较高的效率执行。它的问题是其功能特性比较有限,性能也存在问题。返回有一些脚本语言工具,可以在特殊的环境下执行特殊的操作,例如操作Flash的ActionScript,操作IntenetExporler的JavaScript等,在一些特殊的时候,也可以成为游戏开发人员的选择对象。Flash已经成为网络动画领域的一只领头羊,Flash能够以最优化的模式存储图片,以便最大可能地节约网络带宽。Flash需要被内嵌到网页中,或者编译为单独的执行文件,其尺寸非常小,适合在网络中传播,因此非常流行。ActionScript则是Flash内置的脚本语言,它是完全解释执行的,因而效率不高,但是对于脚本来讲,主要的处理是在Flash本身,ActionScript只是用来进行控制Flash的动作的,因此一般不是很复杂,因此效率上并不是大问题。原始的ActionScript的功能是非常简单的,但是随着Macromedia推出一个个的新版本,ActionScript也增加了很多语法,以至于它可以称为一个新的程序设计语言。因此,使用ActionScript,就可以用Flash设计一些简单的2D游戏。返回返回浏览器,特别是微软的IE,本身就是个很好的2D游戏开发平台。事实上,浏览器提供了很多基本的2D图形功能,只要使用得当,完全可以用来开发游戏。JavaScript本身也是一个完善的程序语言,它也具有面向对象的能力,也比较适合开发小型游戏。同样,JavaScript也是一个纯粹的解释性脚本语言,如果代码不是很复杂,效率主要是浏览器的处理效率,也不是大问题。使用浏览器和JavaScript开发游戏可能遇到的最大问题就是难以调试,浏览器没有提供足够好的动态调试工具,如果开发者不是足够细心,那么发生错误之后就比较难以查找错误所在。返回MAXScript脚本语言具有强大的功能:是一种面向对象的程序设计语言,没有严格的格式要求,易于掌握可实现所有在3dsMax下的交互操作,覆盖了3dsMax的绝大部分功能可建立批处理工具可进行高层次动画创作可定制自己的工作界面返回关键帧动画返回骨骼动画返回类比摇杆,振动包,四个手柄接口卡带主机,手柄返回先河1992年,3DRealms公司/Apogee公司发布了一款只有2M多的小游戏《德军司令部》(Wolfenstein3D)开创了FPS游戏的先河,更重要的是,它在X轴和Y轴的基础上增加了一根Z轴。技术IdSoftware公司的一款非常成功的第一人称射击游戏《毁灭战士》(Doom)Doom引擎在技术上大大超越了Wolfenstein3D引擎。授权Doom引擎是第一个被用于授权的引擎。1993年底,Raven公司采用改进后的Doom引擎开发了一款名为《投影者》的游戏,这是游戏史上第一例成功的嫁接手术。1994年Raven公司采用Doom引擎开发《异教徒》,为引擎增加了飞行的特性,成为跳跃动作的前身。1995年Raven公司采用Doom引擎开发《毁灭巫师》,加入了新的音效技术、脚本技术以及一种类似集线器的关卡设计,使你可以在不同关卡之间自由移动。Raven公司与idSoftware公司之间的一系列合作充分说明了引擎的授权无论对于使用者还是开发者来说都是大有裨益的。返回标准1994年为3DRealms公司开发的Build引擎是一个重要的里程碑,Build引擎的“肉身”就是那款家喻户晓的《毁灭公爵》,已经具备了今天第一人称射击游戏的所有标准内容,如跳跃、360度环视以及下蹲和游泳等特性,此外还把《异教徒》里的飞行换成了喷气背包,甚至加入了角色缩小等令人耳目一新的内容。在Build引擎的基础上先后诞生过14款游戏真3DQuake引擎是当时第一款完全支持多边形模型、动画和粒子特效的真正意义上的3D引擎,而不是Doom、Build那样的2.5D引擎。连线Quake引擎还是连线游戏的始作俑者,尽管几年前的《毁灭战士》也能通过调制解调器连线对战,但最终把网络游戏带入大众的视野之中的是《雷神之锤》,是它促成了电子竞技产业的发展。一年之后,idSoftware公司推出《雷神之锤2》,一举确定了自己在3D引擎市场上的霸主地位。《雷神之锤2》采用了一套全新的引擎,可以更充分地利用3D加速和OpenGL技术,在图像和网络方面与前作相比有了质的飞跃模式QuakeII引擎的授权模式大致如下:基本许可费从40万美元到100万美元不等返回效果正当QuakeII独霸整个引擎市场的时候,EpicMegagames公司(即现在的Epic游戏公司)的《虚幻》(Unreal)问世了。游戏中的许多特效即便在今天看来依然很出色,荡漾的水波,美丽的天空,庞大的关卡,逼真的火焰、烟雾和力场等效果。从单纯的画面效果来看,《虚幻》是当之无愧的佼佼者。最广Unreal引擎可能是使用最广的一款引擎,在推出后的两年之内就有18款游戏与Epic公司签订了许可协议,这还不包括Epic公司自己开发的《虚幻》资料片《重返纳帕利》等。多途Unreal引擎的应用范围不限于游戏制作,还涵盖了教育、建筑等其它领域。DigitalDesign公司曾与联合国教科文组织的世界文化遗产分部合作采用Unreal引擎制作过巴黎圣母院的内部虚拟演示,ZenTao公司采用Unreal引擎为空手道选手制作过武术训练软件,另一家软件商VitoMiliano公司也采用Unreal引擎开发了名为“Unrealty”的建筑设计软件,用于房地产的演示。返回重要作品1998年,《半条命》(Half-Life)和《神偷:暗黑计划》(Thief:TheDarkProject),对后来的作品以及引擎技术的进化造成深远的影响。重要特性曾获得无数大奖的《半条命》采用的是Quake和QuakeII引擎的混合体,Valve公司在这两部引擎的基础上加入了两个很重要的特性:脚本序列技术,这一技术可以令游戏以合乎情理的节奏通过触动事件的方式让玩家真实地体验到情节的发展,这对于诞生以来就很少注重情节的第一人称射击游戏来说无疑是一次伟大的革命;对人工智能引擎的改进,敌人的行动与以往相比明显有了更多的狡诈,不再是单纯地扑向枪口。返回突破在人工智能方面真正取得突破的游戏是LookingGlass工作室的《神偷:暗黑计划》,游戏的故事发生在中古年代,玩家扮演一名盗贼,任务是进入不同的场所,在尽量不引起别人注意的情况下窃取物品。《神偷》采用的是L
本文标题:游戏设计--3开发环境与引擎
链接地址:https://www.777doc.com/doc-5553384 .html