当前位置: 首页 >  在线学习 >  UE5 材质 运动的扭曲效果

UE5 材质 运动的扭曲效果

导读:前言.本篇使用UE5的材质系统实现运动的扭曲效果,并解决他的重复性.纹理变换.总结思路.为uv坐标添加time节点.实现.如下图所示,Texcoord指定uv起始坐标,提供一个float2变量和Time节点相乘(这样对Time有控制权),将相乘结果与uv坐标相加,最后传给采样器.

前言

本篇使用UE5的材质系统实现运动的扭曲效果,并解决他的重复性

纹理变换

  • 总结思路

为uv坐标添加time节点

  • 实现

如下图所示,Texcoord指定uv起始坐标,提供一个float2变量和Time节点相乘(这样对Time有控制权),将相乘结果与uv坐标相加,最后传给采样器

扭曲效果

  • 原理

由于噪声的值是固定随机的,将噪声函数应用到纹理中使得纹理的各通道呈现随机性,使用噪声纹理可以做到偏移uv坐标,这样

即可实现扭曲效果

  • 思路

噪声纹理提供uv坐标,将该uv坐标用于纹理的采样

  • 实现

* 控制扰动强度

  * 解决:可以看到采样生成的纹理过于扭曲,这是因为纹理贴图中提供的噪声值过大,此时乘以一个value即可削弱强度

* 让扭曲效果动起来:扭曲效果+纹理变换

  * 解决:如图所示,先对噪声纹理进行纹理变换,再将得到的uv值传入采样器  

* 让变换的扭曲效果更加真实

  * 问题:从上图可以看出,这些变换只是一味的重复(平铺模式是固定的),很容易就被看穿(因为计算机中的随机都是伪随机)

  * 解决:分两次采样噪声函数,将两个采样的uv值求和传给最终的采样器  

reference

Distortion Shader - UE4 Materials 101 - Episode 4 - YouTube

内容
  • 计算机网络概念汇总
    计算机网络概念汇总
    2023-12-05
    1. 模型结构.五层模型 :.应用层、传输层、网络层、数据链路层、物理层。.应用层 :为应用程序提供交互服务。在互联网中
  • UE开发使用Rider时缓存干爆C盘的解决方案
    UE开发使用Rider时缓存干爆
    2023-12-03
    我们在使用Rider开发UE时,Ride会为每一个项目创建一个解决方案缓存,如果开几个新项目写测试demo,我们的C盘会
  • Unity3D 横板跳跃游戏半成品demo源代码
    Unity3D 横板跳跃游戏半成
    2023-12-08
    项目介绍:.基于B站的 Unity3D新手教程 进行学习制作,但视频中的做法有很多BUG,此demo是经过优化,几乎修复
  • 数据分析师如何用SQL解决业务问题?
    数据分析师如何用SQL解决业务问
    2023-12-03
    本文来自问答。.提问:数据分析人员需要掌握sql到什么程度?.请问做一名数据分析人员,在sql方面需要掌握到什么程度呢?
  • Unity 中的存档系统(本地存档)
    Unity 中的存档系统(本地存
    2023-12-09
    思想.在游戏过程中,玩家的背包、登录、人物系统都与数据息息相关,无论是一开始就设定好的默认数据,还是可以动态存取的数据,
  • unity 实现自定义class深度拷贝 deep copy 深度复制 引用类型复制
    unity 实现自定义class
    2023-12-09
    气死我了,搜半天没有,全让序列化再反序列化,又不方便又不美观。结果自己试着一写就通,两行完事。.首先先安装Newtons