[笔记]ShaderGraph制作一个反射世界对象的材质

最终表现效果如下

话不多说,直接开整  ( • ̀ω•́ )✧

        先在场景中新建一个Reflection Probe反射探针[笔记]ShaderGraph制作一个反射世界对象的材质_第1张图片,它会从各个方向捕捉周围环境,并储存为立方体贴图(更多功能详情见官方文档)。

        将对象设为静态[笔记]ShaderGraph制作一个反射世界对象的材质_第2张图片,调整Size值包含需要反射的范围区域(淡黄色区域),随后Bake烘焙区域。

        烘焙完成后[笔记]ShaderGraph制作一个反射世界对象的材质_第3张图片 就可以看到所生成的贴图状态啦,不过现在的贴图中有大块的黑色阴影,是模型反射在地板上的部分,显然我们不需要这块内容。

        建议将Reflection Probe移动到反射体背后较为空旷的地方,并拉升一点高度,脱离地面阴影。设置完成后重新Bake烘焙,如下图所示。

 做完这一切,就到了快乐的连连看环节。

        ShaderGraph中新建一个Reflection Probe节点连接至BaseColor,保存就可以看到对象已经产生反射效果。

[笔记]ShaderGraph制作一个反射世界对象的材质_第4张图片

        但现在模型兔子的金属感还不够强烈,因为需要再加上ViewDirection和NormalVector让其有视图和法线判断,并且将Metallic设为1,增加金属感。

[笔记]ShaderGraph制作一个反射世界对象的材质_第5张图片

最终就可以达成文章开头所展示的效果。

 


顺带一提

在实践的过程中,会碰到一些搞笑的问题。

        如下图所示,如果把Reflection Probe放到绵羊后面,会发现本该在背后的绵羊,却反射到了兔子模型的前面。

[笔记]ShaderGraph制作一个反射世界对象的材质_第6张图片

        这时只需把它挪到绵羊前面就行了,大家可以多试几次,就能理解Reflection Probe捕捉周围环境,并储存为反射贴图这句话是什么意思了 (*╹▽╹*) 

你可能感兴趣的:(笔记,unity)