在《2012》中,倒塌的建筑物几乎都是虚拟的。你别以为是虚拟的,就能像画画那样随便勾勒。事实上为了确保场景的真实性,所有被摧毁的房子、汽车、道路、树木、植被都经过精确的建模。在电影中,每个3D模型都被赋予不同材质特性,在被摧毁的场景中也会展现出不同的运动方向、速度和状态。正因为如此,我们才能看到扭曲的电线杆、破碎的玻璃窗和裂开的地板。
为了让整个场景看上去更为合理真实,摄制组还专门对各种物体的破坏顺序、速度进行了调整。所有的动画场景都通过3DS MAX来完成,而Thinking Particles粒子效果插件则用来完成水泥板、粉尘等精细物体的视觉效果计算。根据视觉总监Volker Engle表示,在构建《2012》的场景中,他们首先要模拟建筑物金属结构被破坏的效果,然后是建筑物中水泥板等结构倒塌和倾斜的效果,后才是建筑物倒塌后扬起的粉尘和石块。值得注意的是,这些场景是环环紧扣,同时又非常讲究相互顺序,一旦顺序错误,场景的真实性会大打折扣。
从下方的建模示意图中我们不难看出,当建筑物倒塌的时候,首先是房子倾斜,然后是停车场中的汽车滑出,后才是房屋倒塌后的的一片混乱。在这个场景中,房屋倒塌的时间、汽车滑落的速度、角度、时间、位置、方向都需要经过精确计算。
除了主要场景以外,背景也不能忽视。在整个虚拟场景制作过程中,摄制组对每棵树、电线杆以至于建筑物外墙都进行了细致入微的建模,这其中每一个场景都需要进行分层渲染。光是渲染通道,这个场景就包括了照漫反射通道、阴影通道、RGB三原色光照通道、镜面高光通道、间接照明通道、反射通道等。
不同的渲染通道可以处理出不同的视觉效果,如光照、蒙雾、模糊、二维、变色、潮湿等。在《2012》的拍摄制作过程中,每帧画面单通道的渲染时间大约为20小时。整个地震画面场景有7000帧,一共141120小时才能把这些画面全部渲染完成。如果换成单部双路八内核处理器电脑进行渲染,这些工作需要不间断运行16年时间才能搞定。
那万一渲染出来的画面有错,岂不前功尽弃?事实上《2012》摄制组找到了被称作Doughboy的渲染方法来解决速度和质量不可调和的矛盾,所谓Doughboy实际上就是指渲染照明、阴影、反射光等几个重要特性。并不进行任何的纹理贴图,渲染精度也较低,但这样渲染一个场景只要几分钟。通过Doughboy渲染方式,摄制组能马上找出设计错误的地方加以修正,而不是在经过几天终渲染后,才发现错误,再推倒重来。
小知识:所谓Quadro工作站,是指使用了Nvidia Quadro系列专业显卡的系统,它针对若干专业应用软件做了优化,能更高效、稳定的进行专业渲染和运算。
在《2012》电影的制作中,显卡的硬件渲染加速也为制作过程提速不少。由于当今显卡都不支持光线追踪、光能传递等全局照明算法,所以在许多电影视觉计算中,都选择了CPU完成画面渲染。而在《2012》中,摄制组动用了100多台Quadro工作站快速渲染完成了422个特效场景—仅仅是100多个镜头,就一共生成了1.2PB(1200TB)的数据!
有人问《2012》电影的视觉总监,在制作整个电影时大的难点是什么。Volker Engle毫不犹疑的回答道:水。在电影中,海啸带来的滔天巨浪和洪水都不可能实际拍摄。而水不仅包含视觉计算中要命的半透明效果,水的运动方向和特性也难以模拟。更何况电影要模拟的是滔天巨浪,而非波澜不惊的湖面。为了解决水的模拟问题,摄制组自行研发了一款液体模拟软件—这个软件通过粒子原理对液体的运动方式进行计算。然后再计算大量液体的粘稠度,然后获得滔天巨浪的效果—别以为这就大功告成。随后摄制组还需要计算水花、水雾等细节。
除此以外,由于水的半透明特性,摄制组还需解决水面遇到光线的折射、反射率以及波浪等模拟问题。毫不夸张的说,在整个电影特效中,水的模拟耗费掉了多的计算资源。