13、现在来对背光面的颜色进行融合,这时你肯定可以想到使用BlendColor融合颜色这个节点:把灯光的颜色输入到BlendColor的颜色一上,把背光面的颜色输入到Color2上进行两个颜色的融合。但这时用朋友又会想到灯光强度的问题,因为灯光越强,光线的穿透力高,背面透过的光线自然越多。
14、渲染测试一下,灯光的颜色和强度已经成功和背光面产生了融合。同样为了控制方便,我们把这个融合的数据提出到lambert2材质的附加属性中。就象前面增加translucence Color那样。不同的是前面我们增加的是一个颜色属性,现在是控制两个颜色的融合程度,这个属性我们可以起名为:LightcolorMix(灯光颜色融合)使用这样一句mel: addAttr -ln lightcolorMix -at double -min 0 -max 1 -dv 0 lambert2;因为BlendColor中的Blender属性是控制颜色融合的,那自然我们应该把新增的lightcolor Mix属性和Blender属性相关联。
15、观察一下我们现在的shade网络和效果,从中发现问题,如图。那就是我们刚加入的新属性:lightcolor Mix。当我们它的值调到0的时候,背光面的颜色一点都不和灯光颜色融合,而是来自于附加的translucence Color。那是因为我们的lightcolor Mix是和blender属性相关联,当blender为0的时候,全部选用blendercolor2的颜色。所以现在我们要把灯光的强度提出来和散射颜色相乘。因为刚才我们知道现在灯光属性里面的light Intencity是个R,G,B值,所以在这里要用一个把R,G,B矢量转成标量的节点:luminance。
14、渲染测试一下,灯光的颜色和强度已经成功和背光面产生了融合。同样为了控制方便,我们把这个融合的数据提出到lambert2材质的附加属性中。就象前面增加translucence Color那样。不同的是前面我们增加的是一个颜色属性,现在是控制两个颜色的融合程度,这个属性我们可以起名为:LightcolorMix(灯光颜色融合)使用这样一句mel: addAttr -ln lightcolorMix -at double -min 0 -max 1 -dv 0 lambert2;因为BlendColor中的Blender属性是控制颜色融合的,那自然我们应该把新增的lightcolor Mix属性和Blender属性相关联。
15、观察一下我们现在的shade网络和效果,从中发现问题,如图。那就是我们刚加入的新属性:lightcolor Mix。当我们它的值调到0的时候,背光面的颜色一点都不和灯光颜色融合,而是来自于附加的translucence Color。那是因为我们的lightcolor Mix是和blender属性相关联,当blender为0的时候,全部选用blendercolor2的颜色。所以现在我们要把灯光的强度提出来和散射颜色相乘。因为刚才我们知道现在灯光属性里面的light Intencity是个R,G,B值,所以在这里要用一个把R,G,B矢量转成标量的节点:luminance。