前言
本篇使用UE5的材质系统实现运动的扭曲效果,并解决他的重复性
纹理变换
-
总结思路
为uv坐标添加time节点
-
实现
如下图所示,Texcoord指定uv起始坐标,提供一个float2变量和Time节点相乘(这样对Time有控制权),将相乘结果与uv坐标相加,最后传给采样器
扭曲效果
-
原理
由于噪声的值是固定随机的,将噪声函数应用到纹理中使得纹理的各通道呈现随机性,使用噪声纹理可以做到偏移uv坐标,这样
即可实现扭曲效果
-
思路
噪声纹理提供uv坐标,将该uv坐标用于纹理的采样
-
实现
-
-
控制扰动强度
- 解决:可以看到采样生成的纹理过于扭曲,这是因为纹理贴图中提供的噪声值过大,此时乘以一个value即可削弱强度
-
让扭曲效果动起来:扭曲效果+纹理变换
- 解决:如图所示,先对噪声纹理进行纹理变换,再将得到的uv值传入采样器
- 解决:如图所示,先对噪声纹理进行纹理变换,再将得到的uv值传入采样器
-
让变换的扭曲效果更加真实
-
问题:从上图可以看出,这些变换只是一味的重复(平铺模式是固定的),很容易就被看穿(因为计算机中的随机都是伪随机)
-
解决:分两次采样噪声函数,将两个采样的uv值求和传给最终的采样器
文章来源:https://www.toymoban.com/news/detail-482182.html
-
-
reference
Distortion Shader - UE4 Materials 101 - Episode 4 - YouTube文章来源地址https://www.toymoban.com/news/detail-482182.html
到了这里,关于UE5 材质 运动的扭曲效果的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!