2019年成本仅6000万的电影《哪吒之魔童降世》成为了国漫之光,最终拿下了50亿的票房。而去年众多大咖站台的电影《雄狮少年》投资接近《哪吒》的5倍,到现在却连成本都没有收回。我们今天暂且不讨论剧情和广受争议的“眯眯眼”,而来聊聊这部电影的CG。
CG是computer graphics(计算机图形学)的简称,指的是利用计算机生成图形/图片。相比于传统电影行业,除了电脑外,CG无需复杂而昂贵的特制摄像机等各种专业设备。由于全部图像由计算机生成,CG相对人工具有天然的效率优势,所以广泛应用在各种电影中。其实,不仅仅是动漫电影需要使用CG技术,真人拍摄的电影和游戏也少不了CG。
在动漫行业,前期的CG流程通常可粗略分为建模(Modeling)和渲染(Rendering)两部分。建模是指在电脑中创建场景中各种物体的三维模型,以及确定他们的相对运动轨迹。渲染是指在利用电脑模拟光线从光源传递到物体最后进入镜头的过程。
首先来说说渲染。现在常用的渲染软件有Maya, Blender, 3DS MAX和Lumion等。它们的工作流程通常是:将建好的模型导入后,设置物体的各种材料属性和光源,然后模拟光线的传播吸收以及反射过程。在模型和工作人员的经验一样的情况下,决定渲染质量最大的因素就是电脑的硬件水平了。由于渲染需要使用大量的GPU来进行运算,所以大型场景通常需要服务器集群(render farm)来进行渲染。
Blender渲染:场景中每一个物体都需要设置独特的材料属性(原图片)
笔者曾经做过一个雕像破碎场景的渲染,在一个有4个Titan-V GPU的电脑上一帧就需要接近两分钟。而对于有成千上万物体的大型场景,需要的渲染时间就更长了。比如,冰雪奇缘中艾莎走到冰宫殿中有一帧渲染耗费了132小时。
如果建模足够精细,光源和材料设置合理,渲染得到图片可以非常逼真。下面图片是油管上一个大神做的一个房间的渲染图和照片的对比,几乎分不清真假。
有真假美猴王那味了
笔者也曾经跟着油管上的教程做了一个甜甜圈的渲染,如下图所示:
左边是大神的,右边是我的(粉色部分没处理好,反射太强,有种塑料的质感)
再来看看这部电影,总体来说,这部电影在渲染方面做的还是可以的,非常细腻和真实。比如,电影的开头有一幕是阿娟骑着自行车穿过乡村。远处房屋的墙面上留下了雨水和南方的湿气造成的一道道黑痕。近处的池塘里倒映天空中的白云并随着镜头移动。在长达一分钟的镜头中,焦点始终跟随阿娟,前景和背景都出现了恰到好处的虚化。这个场景包含了数百个物体,应该都是独立建模了。这个片头几乎是整部电影里渲染做的最真实的部分了。
注意池塘中的倒影和远处的房屋上雨水留下的黑色痕迹
可惜的是电影后面并没有坚持片头的渲染水平,可以看到很多偷懒的地方。其中最主要的是在建模方面的简化。例如像阿娟后来的短发型,头发应该没有独立建模,而是直接使用的纹理(texture)或者干脆把两鬓画成了黑色。
阿娟两鬓的黑色短发很不自然,没有短头发的那种层次感
在包含成百上千个物体的大型场景中,对每一个物体独立建模的工作量非常巨大。为了减少工作量,一个方法是把背景替换成静态的图片。比如下图中甜甜圈后面有一杯咖啡,但是为了省略对它的建模,我用了一张图片。
这个方法虽然方便,但是缺点也显而易见,背景缺乏层次和立体感,光照也非常变得怪异。补救的办法就是把摄像机的焦点对准前景,让背景虚化。下面这个场景中,后面的树木和房屋可能(不能确定)只是图片,因为它们前面好像隔了一层毛玻璃。
左边树木前方好像有一层毛玻璃