当前位置:   article > 正文

UE4从零开始的卡通渲染——阴影篇(二)_ue风格化角色脸部光影过度

ue风格化角色脸部光影过度

前言

       上一篇中我们已经实现了卡通渲染最基本的色阶分离的效果,并且与原生UE渲染效果进行了比较。虽然整体效果是有了但是细节上还是缺少打磨,所以接下来我们看看该如何修改我们的效果

问题

       当我们拉近观察人物的脸部的时候,发现由于我们计算的是脸部的法线与灯光的点乘,所以在一些角度下脸部的阴影显得有些凌乱,不符合卡通渲染的大范围阴影的形式。

 

实现效果

       我们要做的是简化脸部的阴影,例如下图的显示,脸部的阴影简化以后,看上去就会清爽很多,并且更符合卡通渲染的效果。

       而且我们还得加上一些专门的特征区域,例如在鼻尖附件画上高光或者阴影,如下图所示,这样才更符合卡通渲染的效果。

实现方案

       基于法线的修改,一种是比较简单的包裹体法线,主要是将球包裹体的法线传递到面部模型上,能让脸部法线的方向能呈现一个均匀分布的效果

 

也可以考虑面部膨胀这种方式来改变任务脸部的法线,《火影忍者-究极风暴》中就是这么实现的,如下图所示膨胀过后的脸部以及头发的阴影看上去就干净多了。

       还有一种做法就是距离场阴影,具体来说就是使用SDF来制作的一张Mask图。下面这张mask图就是作者自己用PS画的,毕竟不是专业美术,大体上过的去就行了,毕竟我们也只是用来学习一些做法。

       可以看出这张Mask图上就将鼻尖的阴影和高光都画出来了,还有就是眼睛下部分的高光,接下来就是阴影的过度。有了这张Mask图。接下来就是去到UE中实现具体的效果了。

       首先新建一个母材质,然后运用上我们第一篇写的ShadingModel

       首先先用灯光与人物X轴的方向进行点乘来判断灯光此时在人物的左侧还是右侧。为什么要有这一步?可以看到我们上方的mask图是默认灯光在右侧时的表现,如果灯光在左侧我们得镜像采样,才能得到正确效果。

      

然后这一步,我们不再以脸部的法线来点乘了,而是使用人物前向与灯光方向来进行点乘,具体的阴影分布效果是根据mask来决定的。完成这一步后就可以来看看我们实际运行后的效果了。

 

可以看到,整体脸部的阴影看上去干净很多,鼻尖部分的阴影或者高光都有了,虽然人物眼睛下的高光区域感觉位置不太对,不过应该无伤大雅,那可能是mask的问题,调整一下位置就可以了。至此我们的人物的脸部阴影已经完成了。

参考链接

二次元角色卡通渲染—面部篇 - 哔哩哔哩

【02】从零开始的卡通渲染-着色篇1 - 知乎

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/107551
推荐阅读