分层渲染
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【Maya】分层渲染技术(一)-渲染层RenderLayer(中)
【Maya】模型线框的常用渲染方法
【Maya】分层渲染技术(一)-渲染层RenderLayer(下)
2009-07-05 09:30:55| 分类:三维动画| 标签:|字号大中小订阅
实例3-动画遮罩与光影分离(UseBackground材质应用)
【用于场景的材质(也称明暗器)选择】
打算使用一个光线较为柔和的室外场景。如下图,当我按以前的方法(“实例2-反射与折射场景”中第3步)将贴图赋予自发光通道,画面局部将会很耀眼;而使用Lambert这类材质又很难全局照亮。因此,我使用SurfaceShade材质进行场景贴图。因为SurfaceShader材质具有不受场景光照的特点,能保持贴图的原始明暗。
不过SurfaceShader材质不受光照影响的这个特点拒绝了我们获取阴影的要求,为了得到阴影,我们需要引入UseBackground材质――对渲染层赋予lambert材质后使用Shadow的通道过滤也可以得到整体的阴影,但使用UseBackground材质可获取特定区域的阴影和反射。
在进行操作之前,我们先要了解下UseBackground材质的特性和作用(以下简称UB材质)。
遮罩:将UseBackgroundAttributes栏下的所有参数设置为0(SpecularColor调为黑色),则该材质所赋予的物体将起到“黑洞”的作用-被“黑洞”物体所遮挡的场景将不会被渲染,且遮挡处为透明(需要支持透明通道的图片格式)。此时,MatteOpacity下有两个蒙板模式可选:SolidMatte(固体蒙板)模式时,MatteOpacity参数值表示被遮挡区域的Alpha通道灰度;OpacityGain(不透明增益)模式时,MatteOpacity参数值表示遮挡物体本身的透明度。OpacityGain为Maya默认的蒙板模式,其对物体为100%遮挡,MatteOpacity值影响的是物体获取反射和阴影的强弱。
下图为两种模式的区别:
*如果使用MentalRay渲染,则还需要将mental ray栏下的OcclusionMask参数调为0,否则FG会以灰度掩盖透明部分。
阴影获取:在“黑洞”物体的基础上,调整ShadowMark值大于1,表示获取灯光照射物体所产生的投影的百分比。
因为UB材质只对被赋予该材质的物体起作用,如果只对地面或墙面这样的阴影接受面设置UB材质参数,投射阴影的源物体的自身阴影将无法得到。
反射获取:在“黑洞”物体的基础上,调整Reflectivity(反射率)和ReflectionLimit(反射次数),表示物体反射周围物体的程度,而UB材质的物体本身不会被其他物体所反射。
高光获取:SpecularColor的颜色表示UB材质物体的高光颜色:黑色表示无高光,白色会使物体类似塑料,而使用接近原物体的表面色则会使物体类似金属。因为该参数没有相应的效
果调节(如高光范围,高光过渡),因此一般配合反射参数使用。
步骤进行:
1. 全选场景中的所有物体(包括灯光),添加到新建的渲染层。
2. 开启渲染设置和灯光中的光线追踪,渲染当前场景。
使用了SurfaceShader材质的地面,不接受灯光阴影。因此分层渲染可采用以下流程:
渲染背景->渲染前景->渲染运动物体(遮罩应用)->获取阴影->获取反射
3. 选择layer1渲染层,右键CopyLayer复制新的渲染层(Maya2008需要进入渲染层上方的Layers菜单中选取),命名为Back;
4. 继续复制多个渲染层,并按需要将其命名。如下图,我将背景和地面作为Back层,仙人掌作为Middle层,跑道作为Front层,四驱玩具赛车作为Car层。此外还需要阴影层和Car 层的复制层。
5. 各层设置如下:
Back层:因为背景不会反射场景其他物体,因此除了灯光和背景,其他物体直接Ctrl+h隐藏;使用Presets的Diffuse设置只获取漫反射贴图。
Middle层:同Back层。
Front层:使用属性过滤的方法设置周围物体的渲染不可见(PrimaryVisibility为Off),四驱赛车直接Ctrl+h隐藏;设置渲染层的RenderPassOptions为Diffuse,获取漫反射和镜面反射贴图(注意区别Back的设置,可参考“实例2-反射与折射场景”的第10步)
Car层:赋予跑道和四驱车UB材质,设置为“阴影获取”;其他物体直接Ctrl+h隐藏;跑道
物体的CastsShadows(产生阴影)为Off。
*此方法效果等同于使用Presets的Shadow。
Car1层(Car层的复制):赋予跑道UB材质,设置为“反射获取”;其他物体直接Ctrl+h隐藏;四驱车的PrimaryVisibility为Off;跑道物体的VisibleInReflections(反射可见)为Off。
Car2层(car层的复制):赋予跑道UB材质,设置为“遮罩”;其他物体直接Ctrl+h隐藏;开启四驱车的PrimaryVisibility为On;使用Presets的Diffuse设置只获取漫反射贴图。
*如果想让四驱车反射周围物体,则需要再增加一个渲染层,将赛车模型赋予UB材质获取反射贴图。
Shadow层:Ctrl+h隐藏四驱赛车,然后赋予地面和后景UB材质,设置为“阴影获取”;使用Presets的Shadow设置该渲染层只渲染阴影。
6. 渲染输出设置。除了Car层渲染的动画需要设置序列帧,其他渲染层只需要渲染单帧。在Car层的渲染设置中建立“层覆写”-右键弹出菜单,选择“CreatLayerOverride”,当输入栏变橙色,即可修改该层的数值。
7. 渲染并合成。因为是动画序列,因此使用后期合成软件进行,不过图层混合模式的选择与PhotoShop是相同的。
阴影层:放于最上层,使用正片叠底(Mutiply)模式
反射(或高光)层:放于所依附的场景物体上层,使用滤色(Screen)或者线性减淡模式(ColorDodge)-线性减淡有时等同于添加(Add)
*高光反射层是不具备透明通道的,如果使用Maya渲染时设置了Alpha通道渲染,那么在导入后期合成软件或者PhotoShop后,将看到意外的显示;使用滤色或线性减淡的图层混合模式后可还原真实效果。
【插入说明三个后期合成软件的使用步骤】
AfterEffect环境:
(1)开启AfterEffect,导入素材,对各层进行排序,并使用相应的图层混合模式。