欢迎光临散文网 会员登陆 & 注册

半透明水材质

2023-03-28 21:04 作者:蔚迟逸  | 我要投稿



利用半透明着色模型制作水材质

透明度

设置透明度有两种方式,一种是直接通过透明度节点设置,另一种是通过场景颜色设置,因为要做折射,所以我们用第二种。

如果要设置UV,一定要用Screen Position节点。

与颜色相乘

在此之前,要用Depth Fade深度值,也就是水的深浅部分,结果用于Lerp,使浅水区和深水区有不一样的颜色

反射

因为这个没有反射功能,所以就拿了一张CubeMap来模拟反射。当然,如果真的要实施反射也是可以的,加个反射平面,不过性能开销又会增加,权衡利弊再选择使用哪一种方式吧

加上菲涅尔效果,用于控制反射的强弱

折射

折射就比较简单粗暴了,就是通过扰动采样的场景颜色来达到这种效果

鬼影的原因

在做折射扰动时会出现重影的情况,原因是这个Lerp节点。当我不使用Lerp时,并不会出现重影。我怀疑可能是引擎自身计算先后顺序的原因,目前我还没找到解决办法,只能通过调节浅水区的扰动幅度来减少鬼影的视觉效果。

可以看到一个蓝色和一个绿色的相互叠加了,颜色刚好对应了我设置的浅水区和深水区的颜色


半透明和单层水 两种着色模型的性能开销对比

半透明
单层水


半透明水材质的评论 (共 条)

分享到微博请遵守国家法律