2D vs. 3D: 世纪之战?
在过去的几年中,游戏制作界中一个热门的话题被讨论着,那就是2D将被淘汰,而3D
将成为游戏制作的主要方式.如果你看到一些制作公司正在开发中的情况,你就可能
同意这个观点,然而,分析一下销售前十名的类型,你就不会同意这一观点.
截止至1998年6月的销售量排行:
- Starcraft (Blizzard)2D
- Unreal (GT)3D
- Final Fantasy VII (Eidos)3D
- Deer Hunter (GT)2D
- Police Quest: SWAT 2 (Cendant)2D
- Rocky Mountain Trophy Hunter (GT)2D
- Cabela's Big Game Hunter (Activision)2D
- Diablo (Cendant)2D
- Myst (Broderbund)2D
- Titanic: Adventure Out of Time2D
前10名中有8位用的是2D技术,对2D游戏即将灭亡的理论来说,这意味着什么?
他们可能会辩解说这是由于购买者还没有意识到3D技术的优点.那么,
2D和3D间有哪些不同点呢?
让我们来比较一下,共同找出它俩之间的不同点.
对玩家来说,2D技术和3D技术只是显示数据的方式而已,玩家都是通过二维的平面显
示器来观看它们.对制作者来说,二者的不同之处,首先就在于数据的存储方式.2D技
术中为了显示图像,主流的做法是把预先画好的图像存放到文件中去.并在游戏中调
用出来.3D技术把游戏世界中的每个物体看作一个个立体的对象,由若干个几何多边
体构成.为了显示对象,你在文件中存储的是对对象的描述语句:对象由哪几个多边
体组成,它们之间的位置关系,以及在哪个部位使用哪个贴图等等描述性内容.在显
示时,还得通过程序对这些语句的解释来实时地合成一个物体.通过若干个立体几何
和平面几何公式的实时计算,玩家在平面的显示器上还能以任意的角度来观看3D物
体.如果构成物体的多边形越多,那么合成时需要的计算量就越大.贴图是一些很小
的图像文件,也被称为"材质".如果说多边体是物体的骨架,那么贴图就是物体的皮肤.
如果你在2D游戏中需要一个角色不同角度的画面表现,例如表现它在四个方向上行
走时的动作,那么你就必须预先画好起码四幅图像,游戏运行时,你就必须分别从不
同的文件中调用行走时的图像,来表现行走动作.如果你想让角色能在8个方向上行
走,那么工作量就会增加一倍.在制作一些动画时,工作量更是急剧地增长.这时,使
用3D技术就能省下不少的时间.
3D技术的优点
- 3D技术在三个重要的方面显得非常灵活.首先就是表现你眼前的世界.3D游戏
能够让玩家以任意的角度来观看世界,并让他们在其中以不同的步伐移动.显然,通
过2D技术是实现不了的,因为表现的结果有上万种可能性.在Quake中,由于使用3D技
术,玩家就能够自由地移动,以任意角度观察.
- 3D技术在动画制作方面有独特的优势.这个方面也已经被QUAKE证明了。如果
用2D技术来实现,那么在视角的转换上就会非常受限,而且存储这些动画会超过所能
承受的最大空间.3D动画能够很轻松地越过这些困难.你先给3D对象定义变形和运动
的规律,实际运行时,程序就会让3D对象按照预定的规律来运动,形成3D动画.但是
在现有的游戏中,还没有很好地发挥这一优势.
- 第三个方面,3D对象易于修改,因为它本身是由若干个多边体,象搭积木似地组
成的.这些多边体可以象橡皮泥一样任意地揉捏,来符合最终的要求.而2D图像是由
手工绘制而成,修改非常不便,一些大的改动往往导致已有的工作成果作废,需要重
新绘制.
2D技术的优点
- 第一点,就是2D的图像能够画得很精致,把一些细节完美地表现出来.3D虽然也
能通过增加多边体来更细致地表现对象,但与2D图像所能达到的最高水准还是相差
一段距离.如果你的游戏不需要诸如旋转视角等功能的话,那么采用2D技术会给你的
玩家带来更好的视觉享受.
- 2D技术的另一个优点就是在屏幕上显示和处理都很快.因为所有的图像都已经
预先处理好了,你所要做的只是把它们从文件中调出来,显示到屏幕上.显示卡做这
些工作是绰绰有余的.在实时的游戏中,你能够轻易地获得每秒三十帧的显示速度.
这就为处理器节省了大量的时间,使它有充裕的时间来做显示外的其它工作.例如对
即时战略游戏来说,电脑方的人工智能就需要较多的处理器时间去进行计算.现在,
3D加速卡的速度已经变得越来越快了,但如果要模拟一个真正的3D世界,这点速度还
远远不够.所以至少在未来的几年内,2D图像的显示速度还将占有较大的优势。
- 对2D图像来说,做一个显示引擎很容易。对3D图像来说,制做显示引擎就困难
得多了.但随着技术的普及,这一优势会渐渐消失.
另外还有一个隐性的优势.3D游戏一般具有较高的自由度,对有经验的玩家来说是没
问题的.但对一些新手来说,自由度越高就感到越难以控制.2D游戏一般具有较少的
自由度,新手容易在设计者的引导下一步步地进行下去.
你,作为游戏设计者,需要决定采用哪种技术.如果你的游戏需要比较自由的空间,
倾向于动作化,并且有强大的技术力量,那么3D引擎将是你最好的选择.如果你想制作
具有精美图像的游戏,不需要太高的自由度,那么2D技术是最好的选择.事实上,3D
技术与2D技术并不存在什么孰优孰劣的问题,只存在着哪种技术能更好地为你服务
的问题.很明显,现在2D游戏仍有着大量的市场需求,你并不需要为2D的未来而担心.
Copyright 1998 Geoff Howland
翻译: 99.2.20 by 余建斌 - yjbin@mail.huptt.zj.cn