1.背景
在《庄懂的技术美术入门课(美术向)》Lesson1课后作业中,一位学员制作了类似翡翠效果的卡通渲染Shader,效果图如下所示:
现在想要做的事情是在UE4中复现这个渲染效果,效果图如下所示:
2.实现过程
根据Unity中实现的Shader,在UE4的材质连连看中复刻。
Shader Forge
UE4材质
其中遇到的问题:
1.更改材质中的着色模型部分为无光照,否则总有自带的光照效果。
2.LightDir函数在UE4中没有提供,查询一些资料后( UE4 材质里如何获取到平行光方向),得到解决方案为利用蓝图(关卡蓝图)获得平行光方向,传给材质参数集,再从材质中读取,实现动态更新光照的方向(目前只考虑了平行光)。
获取方式如下:动态更新(关卡蓝图中实现,但平行光方向好像一般不变,除非在游戏场景中由日落日升的效果):
3.UE4中颜色的通道只能为正数,这里微调两者中有差异的参数。