欢迎光临散文网 会员登陆 & 注册

URP | 粒子系统Custom自定义数据控制溶解

2021-12-21 18:58 作者:那个人真狗  | 我要投稿

粒子Custom介绍

自定义数据

  • Custom Data 控制材质属性

    所谓的粒子系统的自定义数据,就是如下图的粒子系统选项:

  • 我们可以在脚本中通过 SetCustomParticleData和 GetCustomParticleData来操作这两个数据。 自定义数据分为两种类型:Color和Vector

    注意: 一般来讲我们将自定义数据和粒子系统的Renderer选项中的Custom Vector 属性联合起来进行使用。

    这个属性可以关联到Shader中,控制Shader的属性

  • 设置类型Vector 类型

  • Custom1.xyzw控制对应Shader里的变量texcoord1的xyzw变量

使用Custom

  • 开启 Custom Vertex 才能起作用,这一步的意义是绑定属性。

  • 绑定属性是根据Shader创建的变量来控制的。

简单示例

这里使用上面使用到的特效基础材质

  • 在顶点结构体里输入第二套UV变量控制

这里注意,不是真的有第二套变量,这里只是创建一个变量和 Custom1.xyzw 关联起来。

  • 输出结构体

  • 在片元着色器阶段控制贴图的UV信息

这里UV2.xy 控制UV的平铺次数,所以乘。  UV2.zw 控制UV的平移,所以是加法。

全代码

效果

  • 点开Custom Vertex  Steams 属性

  • 增加俩个,一个是Custom.xy   ,一个是Custom.xyzw

  • 设置数值 1 1

    X Y 是贴图的平移   Z W 是UV方向移动

总结

  • 了解Custom Vertex 自定义属性,是怎么使用的,Shader怎么调用。


  • 使用的时候需要在Renderer里开启,如果不开启,是不起作用的。

  • 这样控制属性有在Shader里增加一个变量有什么区别吗?

    在Shader里增加一个变量,如果动态控制就需要增加动作文件控制变量的使用。    

    如果使用粒子的属性,就可以使用曲线控制变量,上面的UV流动就是使用曲线控制。    

  • 那些情况还可以使用,比如在控制溶解方面等,一个数值的 动态控制,这里的这个属性,是和UE4的Dynamic 节点是一样的道理。


URP | 粒子系统Custom自定义数据控制溶解的评论 (共 条)

分享到微博请遵守国家法律