Fork me on GitHub

UE4 Vertex Painting 制作路面积水效果

 

1. 整体效果:先来张效果图感受一下。嗯,还不错嘛。

图1:效果图 

2、材质结点:看一下主要的材质蓝图,没办法怎么都感觉很乱。

图2:材质蓝图

如图中所示主要使用:基础颜色、粗糙和法线三个结点。

基础颜色就是一张柏油路的贴图,所有主要处理部分是在粗糙度和法线。

主要思路就是使用顶点颜色混合地面和水面的贴图和法线,粗糙度对应的是地面的湿度。

本文主要介绍的是下面这些材质函数:

  1. RainDropsFlipbook
  2. WaveNormal
  3. VertexColorToMask

下面是各材质函数的实现方法:

图3:VertexColorToMask 结点

图中InputMask为VertexColor,我们的主角也是处理顶点颜色,其输出的内容作为粗糙度和雨滴效果Lerp参数。

图4:RainDropsFlipbook 结点

Flipbook一般用来制作连续的帧动画,这里我们用来制作雨滴的效果。

对雨滴形成的8x8波纹贴图按照时间来循环播放,这样就能看到类似雨滴的效果。

图5:WavesNormal 结点

这个函数结点看似复杂,其实很简单。主要就是将两个输入的法线贴图中的R、G、B

三个通道相加后组成一个最终的混合后的水波纹法线。

项目地址:https://github.com/PINK-FL0YD/VertexPaintWater

引用:https://www.youtube.com/watch?v=6NLUgME0_Io

posted @ 2017-03-21 23:57  Pink-Floyd  阅读(1897)  评论(0编辑  收藏  举报