游戏开发发展历程与面临的问题.doc_第1页
游戏开发发展历程与面临的问题.doc_第2页
游戏开发发展历程与面临的问题.doc_第3页
游戏开发发展历程与面临的问题.doc_第4页
全文预览已结束

下载本文档

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

文档简介

从目前游戏产业的发展状态来说,前景可谓是一片大好。但是行业内目前优秀人才的缺口任然很大。不仅仅是缺乏很多技术性特别熟练的个中高手,而且更缺乏拥有着良好思路的游戏开发人才。如何能够让自己开发的游戏更多的吸引玩家,这是一个值得深思的问题。游戏产业发展至今虽然只有 30 年左右的时间,却已经成为全球娱乐市场的主流,游戏软件的销售量更是与日俱增,甚至超过悠久历史的电影与音乐产业。就国内的发展来看,最近几年内国内的游戏公司如雨后春笋般的成立,所开发或代理的网络游戏更是不胜枚举。以全球游戏业界的发展来看,这几年韩国的表现最为突出,特别是在网络游戏的技术研发与游戏制作,其所发行的网络游戏更成为全球游戏产业重要的指标之一。近几年来,由于 3D 硬件绘图技术的突破,使得实时描绘的画面越来越精致,而且3D游戏性更多元化更逼近真实世界,因此在游戏产业中,3D 游戏已经逐渐取代2D游戏而成为游戏市场的主流,即使是网络游戏,也慢慢趋向3D化。然而游戏3D化将会带来的游戏开发上的困难与问题,之后的章节我们将分析这些问题及解决之道。游戏开发的现况,早期的游戏开发,由于硬件上的限制,如:运算速度慢,记忆空间小,使得程序设计师必须藉由一些特殊的技巧以提高效率或是挤出够用的记忆空间,所以每一个游戏最好是从头写起,以便针对各个不同的游戏程序做最佳化,让硬件的效能发挥到极致,由于这些限制使得当时的游戏画面只能以简单的线条或是图形来呈现,所以早期游戏强调的是游戏性而不是视觉的感受(例如:华丽的画面、惊人的视觉特效等)。而游戏开发小组可能只需要一个程序设计师、一个美术师及一个的音乐作家,甚至可能一个全能的程序员包办所有的工作。随着硬件效能的提升,游戏开始变得复杂而且多样化,而游戏的视觉的感受(如:华丽的画面)逐渐成为玩家是否接受这个游戏的首要条件,所以游戏在制作上日趋复杂,尤其是进入3D时代之后,游戏制作的难度更是陡升。3D 游戏的开发之所以困难复杂,有很多原因,各个厂商的困扰也不尽相同,底下我们将列出一些在3D游戏开发上比较常面临的问题:1. 程序开发的困难要在一个实时的游戏画面呈现复杂的场景与视觉特效,程序必须能够处理繁杂的空间几何数据、对象的材质以及光源的照明等信息,然而要驾驭这些元素,程序员必须具备数学与物理的相关知识。此外,程序效能的好坏,将直接影响游戏的流畅度和画面的精细度,这又牵涉到程序员本身的程序撰写功力,种种因素的影响,连带地提高了开发 3D 游戏的困难度。2. 技术的更新由于3D描绘技术以及算法的不断地更新,所以常常发生游戏开发到一半,就面临汰旧换新的窘境,而更换程序底层虽然可以让游戏的画面更漂亮或效能更好,但相对也会因此而延长游戏的开发时程。3. 程序跟美术间的沟通在3D游戏的开发过程中,程序员跟美术人员之间的沟通是非常重要的。一般的情况,3D场景越复杂意味着画面越精致,相对地,游戏的流畅度就越低。所以如何在游戏的流畅度以及画面的精致度之间取得一个平衡点就成为游戏开发中一个很重要的关键,而程序跟美术小组之间的沟通和协调扮演举足轻重的角色。然而由于这两个团队的立场和知识背景均不同,所以沟通不易且容易发生互相牵制的情况,让游戏的开发更为困难。 4. 硬件的影响由于各家3D加速芯片的制造商所推出的芯片在效能、特性和规格都不尽相同,而3D游戏又相当倚赖3D加速芯片,所以在开发游戏时必须考虑到该游戏是否能与各家显示芯片的兼容,游戏是否够流畅等问题。5. 团队的扩编由于游戏越做越庞大,加上程序开发不易、复杂程度高等特性,使得开发一个游戏需要更多人员的参与。人员的扩编使得人事费用的大幅增加,而且团队合作也更为重要,而团队合作本身就是一个困难点。6. 失败率增高由于3D游戏在操控及镜头设计上的多元化,使得游戏在设计上的变量变多,设计得宜可以让游戏更为出色,但是如果设计不当,则会使得整个游戏毁于一旦,因此在投入大量人力之前,制作一个游戏雏形来测试游戏设计者的创意是否可行是一个必要的方式。这些开发3D游戏时所可能会面临的问题,都会造成开发成本的增加,因此为了解决这些问题降低所需耗费的开发成本,便产生一种新的游戏开发趋势使用现有的(或是自行研发)3D游戏引擎,所谓的3D游戏引擎,可以看成是游戏制作的核心,它主要目的是将游戏开发过程中一些常用的模块或是复杂的运算抽离出来,简化游戏设计的难度让游戏设计人员可以将心力放在游戏设计上,至于3D描绘的相关技术就交由开发3D游戏引擎的开发小组或厂商负责研究开发。目前大部分的游戏厂商都是利用游戏引擎开发游戏,但由于游戏引擎的开发不易,因此开始出现专门负责开发游戏引擎的厂商提供良好、稳定的游戏引擎给游戏开发商使用,以缩短开发的时程和成本。关于3D游戏引擎所扮演的角色及所能提供的功能我们将在下一节做详细的探讨。3D游戏引擎所涵盖的功能当初由于FPS类型游戏的盛行,所以不少游戏厂商竞相开发类似的游戏,由于类型一样,因此很多游戏组件都可以重复使用,而不需重新制作。在id Software所开发的Quake造成游戏风潮之后,id Software便开始授权Quake引擎给其它厂商开发不同题材但类型相同的游戏,目的主要是缩短相同类型游戏开发的时程,重复利用以前所开发过的功能。伴随着游戏的复杂度与精致度的提高,其制作难度也逐渐攀升,因此善用游戏引擎以缩短游戏开发的时程便慢慢形成一股趋势。而每一个3D游戏引擎所提供的功能和特性都不尽相同,不过,大致上来说大部分的3D游戏引擎都会包含底下的功能:1. 跨平台由于三大主机的兴起,所以现在的游戏开发厂商不在局限于单一主机上,因此跨平台的趋势慢慢兴起,由于各个主机的硬件设计不尽相同所以若是没有将这些平台相关的程序代码抽离,当该游戏要跨平台时,其所耗费的工几乎等同于开发一款新的游戏,因此必须设法将这些平台相关的程序代码抽离出来,而这一部份是引擎的核心,所以3D游戏引擎必须负起跨平台的功能,一个具有跨平台的3D游戏引擎,可以使得开发单一游戏却可以平行地在各个主机上发行。2. 平行发展一个好的3D游戏引擎,应该将各个模块如:3D描绘(3D rendering)模块、动画模块、AI模块、游戏内容(game content)模块、声音(sound)模块、特效(special effect)模块、镜头控制(camera control)模块等独立开来。如此一来在游戏开发的过程中,每个小组便可以平行开发,藉由这种方式降低各个小组之间的沟通隔阂。此外,由于3D的描绘技术不断地翻新,因此若要使用最新的技术提高游戏的效能或是让画面更精致就必须实时更新底层的程序技术,由于引擎所提供的是接口,所以当引擎的底层技术更新时,上层的游戏相关的程序代码并不需要大幅的更动便可以运用新的描绘技术或效果以达到降低更新技术时困难度。 3. 提供工具程序3D场景的建构方式和复杂度都会影响游戏的流畅度,因此在建构场景时,美术与程序之间必须互相协调配合,但一般来说,美术人员并不了解程序人员的设计理念,而程序人员也不清楚美术人员在场景制作上的困难点,也就造成了沟通上的隔阂,甚至出现互相牵制的情况,进而拉长游戏制作的时程。要降低这些情况的发生,工具程序是一个很好的解决方式,藉由这些工具程序,美术人员可以了解自己所制作的场景在程序端的显示结果及效能,而程序端也可以藉由这些工具程序让美术人员知道场景该如何建构才能提高游戏的效能。4. 易于制作游戏雏形由于3D游戏在操控及镜头设计上的多元化,配合不同的主题,藉由操控上或是运镜上的变化,可以使得整个游戏效果更为突出,更容易将整个游戏所想要表达的情境呈现出来;但相对来说,由于这些自由度也使得游戏更难设计,如果设计不当,便无法顺利将游戏的情境传达给玩家因而成为一个失败的作品。所以在游戏正式制作之前,应该先制作一个雏形测试设计者的设计理念是否可行。因此3D游戏引擎应该提供方便的工具和函式让游戏设计者在不需要撰写复杂程序代码的情况下,可以在短时间内实作出游戏的雏形,以了解该设计理念是否可行。5. 缩短开发时程3D游戏引擎的另一个重要目的,就是缩短开发时程,由于3D游戏引擎已经具备一些常用的3D特殊效果及运算函式,因此游戏开发者便可将心力放在游戏设计本身上,而不用将心力花在这些琐碎而复杂的组件上,自然可以提高开发速率而达到缩短时程的目的。开发3D游戏引擎的困难点运用3D游戏引擎开发游戏俨然成为现今游戏开发的趋势,但是开发一个3D游戏引擎并不是一件容易的事,开发一个3D游戏引擎将会面临许多的问题:1. 开发成本由于3D游戏引擎的功能包罗万象,不仅要考虑底层程序的效能、绘图技术,更要能够提供良好的程序接口和编辑工具,因此要开发一个3D游戏引擎所花费的成本和时间人力颇高。2. 技术层面一个3D游戏引擎所提供的功能通常会超过20个以上先进的计算机绘图技术及动画功能(如bump mapping、environment mapping、shadow volume、mipmap.等),若工程师没有相当的实力,要在时间内开发出所需的功能供游戏制作用是一件很不容易的事情。3. 工具是否齐全在前一节有提及,游戏引擎扮演着一个重要的角色:程序员与美术人员之间的沟通桥梁,这一个角色扮演是否得当,端赖该引擎所提供的工具是否齐全、是否易用而定,例如:level editor、character editor、sound editor等工具供设计人员设计并测试游戏用。而这些工具的设计也是一个相当困难的挑战。4. 稳定度最后,还有很重要的一点是:游戏引擎的稳定度及开发度,一个游戏引擎是否稳定将直接影响到该游戏的稳定度。然而一个新的游戏引擎需要更长的时间测试和除错,而这些都会影响到游戏的开发时程。另外,人员的流动、新的硬件平台测试、新的绘图技术更新、不同平台的移植等,都使得维护自有的3D游戏引擎变得困难万分。综合以上所言,我们可以了解到运用3D引擎开发游戏是一股新的趋势。然而由于引擎的开发和维护都具有相当的难度,因此开始出现专门开发和维护3D游戏引擎的厂商,这些厂商提供稳定且性能良好的引擎供游戏厂商开发游戏,如此一来游戏厂商便能将重心放在游戏的开发及设计上,至于受底层的3D描绘技术及工具设计就交给引擎开发商或开发小组去烦恼吧。结论由于3D描绘的技术更新越来越快,使得游戏的开发难度日渐升高,因此将常用的部分慢慢地抽离出来以提高重用性是一个降低开发成本的好方法,这些模块集合起来之后便形成3D游戏引擎的雏形。3D游戏引擎的优点就在于提供稳定的游戏开发平台、最新的动画或绘图功能、与游戏引擎互相搭配的游戏制作工具及跨平台等强大功能,因此利用3D

温馨提示

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

评论

0/150

提交评论