UE4 Vertex Painting 制作路面积水效果
1. 整体效果:先来张效果图感受一下。嗯,还不错嘛。
图1:效果图
2、材质结点:看一下主要的材质蓝图,没办法怎么都感觉很乱。
图2:材质蓝图
如图中所示主要使用:基础颜色、粗糙和法线三个结点。
基础颜色就是一张柏油路的贴图,所有主要处理部分是在粗糙度和法线。
主要思路就是使用顶点颜色混合地面和水面的贴图和法线,粗糙度对应的是地面的湿度。
本文主要介绍的是下面这些材质函数:
- RainDropsFlipbook
- WaveNormal
- VertexColorToMask
下面是各材质函数的实现方法:
图3:VertexColorToMask 结点
图中InputMask为VertexColor,我们的主角也是处理顶点颜色,其输出的内容作为粗糙度和雨滴效果Lerp参数。
图4:RainDropsFlipbook 结点
Flipbook一般用来制作连续的帧动画,这里我们用来制作雨滴的效果。
对雨滴形成的8x8波纹贴图按照时间来循环播放,这样就能看到类似雨滴的效果。
图5:WavesNormal 结点
这个函数结点看似复杂,其实很简单。主要就是将两个输入的法线贴图中的R、G、B
三个通道相加后组成一个最终的混合后的水波纹法线。