07_添加鼻线
添加鼻线
当前没有鼻线,灯光在正面没有鼻子很奇怪 
读取鼻线Mask
鼻线的位置其实是在面部贴图的Alpha通道中,我们已经进行传入了,但是没有调用 
创建NoseLine组
参数设置
先为Forward组添加输入参数,垂直水平显示的阈值还有鼻线颜色
创建新组并设置输入等参数
传入的Mask需要先判断是否为Face 
获取观察向量
获取观察向量一般来说是对世界空间下相机向量进行归一化即可。但Blender不太一样,它的相机深度轴不是Z,而是-Z,所以需要翻转。当然也有简单的获取方法** **方法一* 直接从几何属性获取,Incoming就是ViewDirWS,说实话这名字真不太熟啊。。
方法二 直接计算 
计算鼻线的DisplayValue
参考代码
根据点乘判断方向>0同向,小于0反向,计算ViewDir和HeadUP点积已及ViewDir和HeadRight点积用作判断。
这里我们需要自己写一个SmoothStep节点,因为Blender是MapRange节点里的不符合我们需要
Smooth公式及节点如下:
计算完成后输出结果,颜色进行压暗处理 
混合输出
先使用NoseLineDispValue混合描边颜色和基础颜色
混合完成后再使用Face的布尔值对带描线的颜色和不带描线的颜色混合 
参数设置
给ForwardShader调参数,颜色为FF8181 
当前效果

Enjoy Reading This Article?
Here are some more articles you might like to read next: