《华纳巨星总动员》一片采用真人与二维卡通合成的制作方式(如同经典动画老片《空中大灌篮》)。片中有一个经典的镜头:兔八哥与手持猎枪的傻小子嬉闹,弄得纸牌满天飘散,很显然纸牌部分是采用三维CG制作的(如下图)。今天我们就来看看如何使用3DSMAX中的Dynamics动力学打造这样的特效。
步骤1:使用建立命令面板中的基本几何体Box,拖拉出纸牌的形状,并赋予扑克的贴图材质。这样创建的“纸牌”会带有厚度,如果你需要的是“薄纸一张”的效果,建议使用基本几何体中的Plane,它会创建一个无厚度的面片。纸牌的贴图两面是不同的,一般我们会首先将模型转化为可编辑Mesh网格的模式,然后进入变动命令面板中的Face次编辑级别选中任意的面(注意:如果你的纸牌一面是由多个Face组成的,可以结合Shift键多选)。
步骤2:使用视图上方的Select and Link 串联各个纸牌模型。
步骤3:进入建立命令面板Create中的Space Warps 空间扭曲模块,选择Particles&Dynamics,单击Wind,在视图中拖拉建立一个Wind(也就是风力场,纸牌模型将被它吹动)。然后再建立一个Gravity模块。选中所有的纸牌模型,使用界面上部工具栏中的Bind to Space Warps将它们与Wind,Gravity分别连接在一起(如果你使用的是最新的3DSMAX6,Wind风力模块已被整合到了reactor反应堆栏中了)。如果你此时渲染场景的话会发现并没有动画效果,别着急啊,这是因为我们还没有对物体进行动力学的计算呢!
步骤4:进入Utilities,单击Dynamics动力学。在出现的卷展栏中单击 Edit Object List,出现一个对话框,选中左栏中的所有物体名称,单击中部的右向按钮,将它们移到右栏中。这样就将纸牌模型统统添加到动力学影响的列表中了。其他各种参数这里就不作介绍了,大家反复试验即可。
步骤5:参数设置全部OK后,单击Solve就开始进行动力学的仿真物理计算了。再渲染瞧瞧吧,效果还不错吧?如果飘散的强度“乱”度还不够,还可以选中视图中的Wind模块图标,然后调高Wind Speed风速数值(要不要来点龙卷风呢)。真实世界的风是变幻不定的,时强时弱,勾选perturb前面的复选框,调高其中的variance数值可增加风力的变化。菜鸟的你若是调得一塌糊涂也不必担心,后悔药早就准备好了:面板最下方Reset Default Value按钮即是!
另外,二维画面与真实拍摄画面的结合是一个重要课题,如果处理不好,观众会感觉两者脱离,不和谐。如何做到天衣无缝具有融合感呢?“影子骗术”是一样秘密武器!(如图2)遭到敌人的围攻,兔八哥与真人演员举手投降,而投降的位置是有选择的:在楼梯旁边,兔八哥的身影明显地投在逼真世界的楼梯上。这样,一下子二维世界与三维世界似乎一下子结合了。
制作兔八哥的影子有以下几种方法:
方法1:兔八哥与楼梯都制作为三维模型。在CG软件中打灯光,渲染得到正确角度的阴影。最后将真人画面视频编辑到三维空间。
方法2:低技术手段,建一个兔八哥的实际模型,置于楼梯位置(和真人演员一起),获得真实阴影。最后抠掉,和单独的二维兔八哥合成。(视频软件中可以对衔接的细节如脚部阴影深入加工)