Arnold for C4D 29 【Toon Shader 0
本篇讲解Toon shader剩下的9+1组参数:
Base/ Specular/ Stylized highlight/ Rim lighting/ Transmission/ Emission/ Geometry/ AOVs/ Advanced/ Sheen
很多属性跟其他Shader是一样的,比如Specular Weight啊什么的,这些之前的教程已经讲过很多很多遍了,在此将一带而过,不明白的请翻看之前的教程。
特殊属性会重点讲解。
Base
这个Base跟其他Shader的Base是一样的Base,就是一个基础着色;
- 【Weight】控制基础色权重,默认0.8;
-
【Color】基础颜色;没什么好说的,需要注意的是,金属材质通常需要一个接近黑色的基色;
-
【Tonemap】Tone还记得啥意思吧?不记得就回看【Toon综述】;
Directional lighting
通常结合Ramp节点实现卡通效果;
不同灯光下效果差异明显:
Skydome light
调整灯光曝光度,将对Tonemap产生明显影响
还有一点需要注意,Tonemap正片叠底Color:
还还有一点,Tonemap是基于UVs,所以Ramp Type要选择U或V,否则连接Ramp node后不会有任何效果;
至于选择U还是V,看具体需要;效果差异在调整UV属性的时候才会显现
连接不一样的节点到Base Color或Base Tonemap能够产生多种变化,最常用的节点就是Utility和Ramp这俩;Utility能够实现更多效果;
Specular
同上,这个Specular跟其他的Specular也是一样的,控制镜面反射,四舍五入等于高光;
注意:这里用到的图片案例不是默认效果,Tonemap均连接了Ramp:
-
【Weight】镜面反射权重;
-
【Color】镜面反射颜色;
改变颜色就是改变高光颜色
-
【Roughness】镜面反射粗糙度;如果要产生特殊效果的高光,需要连接贴图;
注意:除非Roughness的值为0,否则反射面影子没有Edge:
这里添加了一个光滑地板用于显示反射效果
-
【Anisotropy】各向异性,之前讲过很多次了;值为0时,即为各向同性;
调整其值又0到1,高光会在U方向产生变化
-
【Rotation】旋转,控制高光在UV空间中的方向,值为1.0时即180°;
如果是拉丝金属材质,将会控制拉丝方向;这很好理解,因为如果是拉丝金属,高光会沿着拉丝方向延伸;
-
【Tonemap】控制镜面反射的Tone,具体作用看图吧 ↓
调整Specular Roughness的时候,对Tonemap的影响还是很显著的:
Stylized highlight
-
【Light】指定一个或多个灯光作为对象的高光光源,以产生更多特定高光;中文名称请务必重命名;
Arnold中所有名称都不要用中文!不要用中文!不要用中文!;
可以将灯光直接拖拽到此处;
使用多个灯光时,用分号隔开,例如:lightShape1;lightShape2 ,注意分号也是英文的分号;
支持灯光类型:Distant/ Point/ Spot/ Photometric;
目前不支持:Mesh和Skydome;
也不支持Curves;
-
【Color】这个Color跟其他的Color不太一样,它不仅控制颜色,还影响高光的形状;
可以连接任意格式贴图对高光进行变化,或者任意RGB格式的节点;
什么都不连接不产生任何效果;
使用纯色只会产生一个圆形高光:
如果想要一个窗户的投影,贴图一周也要有黑边才会显示为正确形状,没有那一圈黑边高光默认显示圆形,贴图使用示范:
左图为错误示范,右图为正确示范
-
【Size】控制Stylized highlight尺寸:
Rim lighting
还记得Rim的意思吧?忘记的请复习。
-
【Rim light】将指定灯光的名称填写在此处,或者直接拖拽过来;同上,务必不要使用中文名称!
Rim lighting会受所用灯光产生的阴影影响;
支持灯光类型:Distance/ Point/ Spot/ Photometric;
目前不支持Mesh light和Skydome;
不支持多个灯光混合; -
【Color】这个Color跟Stylized highlight的Color几乎是一样的意思;
也需要连接其他节点来控制,通常使用Ramp;
这个参数不太好解释,还是直接看图说话吧,效果明显:
拖动ramp颜色条可以看到明显变化
比如,伦勃朗光效,这个参数就很好用;
嗯。伦勃朗光能显瘦(ง •_•)ง 。 -
【Width】如果你只是想简单调整一下Rim light的宽度,就可以直接值用此参数,而不必连接贴图什么的;
还是那句话,自己多试试;
Transmission
主要用于实现透明/半透明效果;
那么,问题来了
记得取消勾选Opaque!!
之前讲过一万遍了,忘记的自觉跪下
-
【Weight】权重,光线穿过表面的深度;
如果没有致命错误,对象还是乌黑一片,就需要提高Ray Depth了,位于Render setting的那个Ray Depth; -
【Color】这个就是单纯的控制颜色了,对象显示的最终色彩,是透射折射后的光线与该参数设定颜色进行正片叠底后的效果;
-
【Roughness】粗糙度;效果如下↓
-
【Anisotropy】控制光线散射方向偏差或各向异性;
默认值0,即各向同性,光线均匀向个方向散射;正值延光线方向向前延伸;负值反之,也就是会向光源点方向“往回缩”(一般不会用负值);
-
【Rotation】旋转,1.0即180°;其他同Toon Specular Rotation;
-
【IOR】折射率,注意材质菲涅尔影响;菲涅尔之前讲过,忘记的请回看;
注意:Edge也会受IOR影响:
Emission
这个Emission跟其他Emission差不多,产生白炽灯光效;
同样也会跟其他Emission一样,渲染时噪点多,更建议使用Mesh Light,而且Mesh Light能够产生更好的阴影效果;
Emission在黑暗环境中容易产生更多的噪点,消除噪点需要提高Diffuse samples的值;
-
【Weight】权重,控制亮度;
-
【Color】控制发光颜色;
使用贴图能够营造更多发光效果,比如这个熔岩效果
Geometry
-
【Normal】通常配合法线贴图(Normal mapping);
工作原理是将Normal mapping信息转换成RGB信息,对应Surface normal的XYZ坐标;
比Bump mapping渲染速度快;
连接bump node时,bump会通过扰乱normal的方式产生肌理;
注意:为Edge添加bump的时候,Edge Detection务必选择Shading Normal;
-
【Tanget】切线,与Shading mapping共同定义输入向量的切线坐标系统;
使用雕刻工具的时候,要在此处连接Normal map所依赖的Targent map;
值为0的时候,Arnold将尝试以下步骤进行自我坐标构建:
Step1:查找名为tangent和bitangent和矢量用户数据(Vector user data);
Step2:使用UV坐标系统;
Step3:建立自己的本地坐标系统;
注意:Shader只能在Targent space中工作,如果在World space和Object space输出,需要使用space_transform进行转换;
-
【Bump mapping mode】指定受bump影响的部分:diffuse/ specular/ both;
AOVs
Toon shader可用通道:Stylized highlight AOV,Rim light AOV;
- 【Highlight】Stylized highlight AOV;
- 【Rim light】Rim light AOV;
Edge分层渲染 注意事项:
如果要分离保存Beauty render(无Edge)及Edge,需要创建RGBA AOV(beauty用)和Custom AOV(Edge用);
RGBA AOV使用box_filter,Custom AOV使用contour_filter;
这样即可同时渲染两个单独图像,节约渲染时间。
Advanced
-
【Indirect diffuse】仅从间接光源接收到的漫反射光量;
默认值Indirection diffuse:0,能够创建更加二维的阴影效果:
-
【Indirect specular】仅从间接光源接收到的镜面反射光量;
1.0以外的值可能会产生错误,尽量不要修改
-
【Energy conserving】Toon shader默认节能,取消勾选此选项,Toon shader就不管那么多了,将只显示Base/Specular/Transmission产生的效果,禁用需慎重,还会影响Toon shader的间接照明,;
Sheen
新版本没有该组参数,具体从哪一版开始没有的我也不造,等我发现的时候它就没了;
还是稍微一提吧↓
-
【Sheen】一种节能光泽层,多用于纤维、布料(天鹅绒/缎面等);Sheen会分布到漫反射层,分布数量即由该参数决定;
Sheen可以看作是纤维密度和长度的表现,会有一种毛茸茸的赶脚;
-
【Color】控制Sheen的颜色;
-
【Roughness】粗糙度;调节纤维偏离surface normal方向程度;
不知道泥萌是否拥有过金丝绒材质的衣服,当你撸一把金丝绒,表面绒毛就会有变化,四舍五入等于增加了Roughness的值。
嗯,这个比喻真是绝了,我可真是个小机灵鬼( ̄▽ ̄)"
所以,Toon Shader就全部讲完了。
下次更新时间内容随缘(・∀・(・∀・(・∀・*)
加粗敲黑板!自己多尝试!
熟能生巧!
以上,Over。
Reference:
1.Solidangle Support & Documentation
2.SGS
禁止私自转载,转载需征得老夫同意。
否则,必追究。