- 最后登录
- 2014-10-23
- 注册时间
- 2011-7-19
- 阅读权限
- 90
- 积分
- 81303
 
- 纳金币
- -1
- 精华
- 11
|
第11部份: 最后的章节
游戏引擎许可与组件
如今如果你要制作一款游戏,时常最快的开始方式就是购买现有的游戏引擎许可证并在此基础上开发---这就是Raven所做的事情,最近使用Quake3引擎编写了Star Trek Elite Force。Half Life基于Quake 1引擎,Deus Ex基于Unreal,这个清单还在继续。如今有两种许可证方式---一个完全的游戏引擎(或游戏操作系统如Jason Hall授予LithTech),或者一组给定问题的部分解决方案。这方面一个好的例子会是RenderWare,这是一个渲染场景的部分解决方案并给你提供一些物理。你不能仅仅拍着一些模型并把它们称为完成了的游戏---还需要有声音系统,游戏机制,等等。但它确实给了你一个建立游戏的坚实基础。还记得我在渲染和物理学章节提到的所有数学知识吗?很好,这样你就避免了所有那些东西。
藉由LithTech,Unreal和Quake,你确实得到了完全的解决方案 -- 或至少是创始者为他们的游戏所需要的全部解决方案。记住QuakeIII是可以多人玩的,不时建立在单人游戏的基础之上的比如说Unreal Tournament。使用QuakeIII,你失去了单人游戏需用的某些系统,像读取/存储,脚本等等。你只是的到了Id公司制作一款游戏需要的东西,而不一定就是你所需要的东西。有时侯如果系统的一个局限恰好是你所需要的东西时,这可能是一个真正的缺点。给Star Trek Voyager加入读取/存储和脚本:Elite Force不是野餐,但是必须的。然而,使用Quake3引擎依然是领先的开端。
Unreal有名的Tim Sweeney 对于今天一些流行的预先打包的游戏引擎解决方案有一些评论。
"我认为我能公平地比较游戏引擎 (Quake,Unreal等) 和游戏组件如 RenderWare 和 Karma。游戏引擎是包含游戏开发的所有技术方面的组织严密的框架:渲染,编辑工具,物理学,人工智能,网络,等等。
它们针对那些想要一个完全的,现成的解决方案的开发者,以便他们能够把精力集中在游戏可玩性和内容上。像RenderWare这样的游戏组件针对那些正在开发他们自己的技术但不想在一些已经很完善的技术领域做重复开发的开发者。
游戏引擎有解决游戏开发中全部技术问题的优点,有容易把一些包括游戏类型的假设建立在里面的缺点。举例来说,Unreal已经被用来制作第一人称射击游戏,第三人称动作游戏,角色扮演游戏,甚至弹球游戏。但是没有人用它制作飞行模拟类游戏—它不是适合这种游戏的技术。游戏引擎带着完整的源代码而来,这是祝福 ( 你能完全看见内部正在发生什么,你可以自由地根据你的需要扩充它),也是诅咒 (如果你改变它,你将必须把变化合并进新的版本之内)。
游戏组件有解决所关注领域的技术问题的优点,如渲染或者物理学,不用花费大量的时间在这方面就可以比典型的开发者做得更好。他们的缺点是把这些组件整合进你的引擎其余部分就是你自己的事情了,这有时候会相当复杂。游戏组件一般没有完整的源代码伴随,因此并不总是很清楚他们内部做了些什么。"
谢谢Tim,很精妙的分析。 |
|