统一材质实现2 d水流效果的方法

  介绍

这篇文章主要讲解了统一材质实现2 d水流效果的方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

水流的模拟主要运用了顶点变换和纹理动画的结合;

顶点变换中,利用正弦函数模拟河流的大致形态,例如波长,振幅等。

纹理动画中,将纹理坐标朝某一方向持续滚动以形成流动的效果。

脚本如下:

材质“MyUnlit/ScrollWater"
  {
  属性
  {
  _MainTex (“Texture", 2 d)=皐hite"{}
  _Color (“Tint"颜色、颜色)=(1,1,1,1)//控制水流波动的幅度,也就是三角函数中的振幅(值域范围)
  _Magnitude(“失真Magnitude"、浮点数)=0.3//控制周期的长度,值越大,周期越短,频率越高
  _InvWaveLength(“波失真Inserve Length"浮动)=1//流动速度,用于纹理变换
  _Speed (“Speed"、浮点数)=0.1
  }
  SubShader
  {//顶点动画需要禁用合P处理
  标记{“Queue"=癟ransparent"“RenderType"=癟ransparent"“IgnoreProjector"=皌rue"“DisableBatching"=癟rue"}
  
  通过
  {//透明度混合:关闭深度写入+设置混合状态+禁用剔除(双面渲染)
  标记{“lightmode"=癴orwardbase"}
  ZWrite掉
  混合SrcAlpha alt="统一材质实现2 d水流效果的方法"> 

看完上述内容,是不是对统一材质实现2 d水流效果的方法有进一步的了解,如果还想学习更多内容,欢迎关注行业资讯频道。

统一材质实现2 d水流效果的方法