谁把阿宝变丑了

硬派学堂

阿宝(音译)是现在正在热播的《功夫熊猫》的主角,憨态可掬、表情搞笑,播出不久就在国内拥有了一大群影迷。《功夫熊猫》的游戏也发布了,可是见过游戏版《功夫熊猫》的玩家,肯定会觉得阿宝没有电影里面的好看了,完全影响了阿宝在我们心目中的形象。今天我们要将这群游戏开发人员推上“法庭”,让他们给一个说法。为什么阿宝变丑了?

原告律师:游戏设计者没用心

大家看看,图1和图2就是证据。虽然两个都是电脑做出来的图片,但我们可以感觉到图2的游戏中的阿宝,细腻程度、光泽度远不如前者,视觉效果就差了不少(原图查看www.shudoo.com/bzsoft)。为什么两者差距就这么大呢?是不是你们在开发游戏的时候偷了懒,没有用心去设计阿宝的外形?

26-d19-1-2.jpg
图1
26-d19-1-3.jpg
图2

被告律师:为了考虑全局

的确,我承认游戏中的阿宝没有电影中的形象生动、好看。只不过游戏开发过程中必须考虑用户的硬件配置,不然大家就玩不起,这和我的当事人的工作态度没有关系。我这里也有一些证据和理由,很能说明问题。

理由一:显卡的工作原理

在讲工作原理前,我们先认识一下三角形和圆的关系,如图3,这是一个八边形,它被圆“包”在里面。当我们把圆心和多边形某一个边的两个顶点连接起来就成了一个三角形。我们试想一下,现在是八边形,如果是二十边形(三角形更多)会怎么样?多边形的边会更加靠近圆弧,当多边形上百个之后,是不是更加接近圆圈了。

26-d19-1-4.jpg
图3

在阿宝的形象设计者操作电脑的时候,CPU就会给显卡发去指令,叫显卡做渲染等工作。而显卡做这些事情的时候,也有一个先后顺序,首先它会搭建一个基础框架(图4),用许多的点组成一个个的三角形,而这些三角形最后会组成我们想要的图样。这和我们建造木房子的时候,搭个房架子差不多。我们可以发现图4中,只要靠近圆弧的地方三角形就会比较密集,这就可以用我们前面说的三角形越多,越接近圆弧的概念来解释。

26-d19-1-5.jpg
图4

三角形越多,点越多,给显卡带来的负担就越大。做这些工作的都是流处理器,它们的数量从显示核心出厂的时候就固定了,给同样数量的流处理器加大工作量,显卡就会非常的吃力。这也是为什么流处理器个数会对显卡性能造成较大影响的原因之一。

这还没有完,茶壶搭好架子,还得给它的外表“美化”一下(图5)。比如加点颜色、弄点花纹之类的,这部分工作就继续由流处理器做,这样的好处是让显卡的流处理器单元使用率更高。而这在以前是不可能的。

26-d19-1-6.jpg
图5

小贴士:现在我们都叫显示核心里面具体做事情的“工人”为流处理器,这种架构称谓统一渲染架构。而在DX10时代以前,这些“工人”主要分为两个部分,一个部分叫顶点着色单元,另一部分叫像素渲染单元。听名字就知道前者是画架构的,后者偏向于渲染工作,两部分“人”不相互帮忙干事情。这样就会出现处理单元无法充分利用的情况。而目前最新的采用了第二代统一渲染架构的GeForce GTX280显卡的渲染原理与第一代相同,只是在效率上更高。

大家看,不是我们不把阿宝做英俊一点,而是我们担心做得太漂亮,对大家的显卡和电脑性能会是个巨大考验。所以我的当事人无罪!

理由二:游戏与电影有区别

大家知道最初级的动画片是怎么制作的吧,很多幅图片放在一起,翻动画纸,就可以让图片上的主角“动”起来。前面我讲的大家可以理解成是对一幅图片的渲染过程,而游戏和电影是动态的,由多幅图片组成。这同样是让我的当事人不敢把阿宝制作漂亮的另一个原因。

在玩游戏的时候,我们常常会说帧/秒的单位(FPS,Frames Per Second),每一帧大家可以理解为一幅图片,所以如果有人说他的电脑玩《魔兽世界》只有30帧/秒,那么就说明它的电脑运行这个游戏,一秒钟能渲染30幅图片。所以我们玩游戏时如果要求的速度更快,最常见的方法就是提高硬件性能或者降低每幅图片渲染的难度,比如关闭特效。

小贴士:多少帧/秒才算流畅

一般来说,玩游戏30帧/秒才算流畅,60帧/秒很流畅,而有些玩FPS游戏的玩家会去追求更快的速度。如果帧数太低,就会出现游戏有延迟甚至卡的情况。我们可以用Fraps这个软件测试帧数(下载网址:www.shudoo.com/bzsoft)。安装,打开软件,进入游戏就可以在屏幕左上角看到游戏速度(图6)。

26-d19-1-7.jpg
图6

而相比之下,电影就没有这么多的麻烦,24帧/秒就可以了,而我们有时候见到的25帧/秒,多出来的一帧是做后备用的。这和我们的眼睛识别有关,当上一帧画面过去之后,这个画面会在我们的视网膜上“存在”一段很短的时间,而两幅连续的图片低于这个时间让大家看见,那么就会让大家觉得图片是连续、动态的。

如果称显卡为即时渲染,那么电影的实效性就差了许多,这也是电影虚拟场景能够做得如此美丽的重要原因。同样用画画来打比方,游戏的每幅画都是即时画出来的,流处理器就是大家的“画家”,你要什么样子的画都由你自己决定(游戏操作),为了不让大家觉得慢,所以留给显卡的时间很短,游戏就不敢把特效做得太高,这样显卡“画”不过来,速度减慢。

电影方面就好像事先画好的画,你可以花上十天半个月画(渲染图片),画的质量可以非常高。画完的画任由你随便从哪幅画开始欣赏(调节视频进度)。对于显卡来说,由于这些画都是事先渲染好的特效,它的作用只是把画“播放”出来罢了(图7)。

26-d19-1-8.jpg
图7

影片中阿宝以及环境的效果可以在后期慢慢由显卡渲染

电影的后期处理较游戏的即时处理优势非常大,所以我的当事人再怎么用心做效果,都因为技术原因,而无能为力,而非原告方认为的工作态度不认真所致。

最终判决书

根据原告和被告双方列出的依据和客观事实,游戏中阿宝形象不如电影中的好,除了渲染方面和帧数方面的原因外,还有我们自己的原因,因为大家的电脑硬件配置各不相同,为了能让更多的人玩这个游戏,游戏设计方不得不降低游戏画质。所以本庭宣判,游戏设计者无罪。