虚幻4 制作UI粒子系统插件

来源:互联网 发布:中国高等教育改革知乎 编辑:程序博客网 时间:2024/05/09 07:16
1.编辑器里面创建插件。
2.编写2D粒子系统对应的资源文件类 UIParticleAsset。(前面有写过方法)
http://blog.csdn.net/lqpgfz/article/details/45225353
{
基本属性有:
粒子时长。
单个粒子的生命基础值
单个粒子的生命变化值
单个粒子的速度基础值
单个粒子的速度变化值
。。。
子粒子数组(记录了在每个粒子的生命周期的百分之多少时候出发一个什么样的粒子)
}


3.创建记录粒子自己初始状态的类ParticleState,记录了粒子的出生的各种属性,这个初始化属性对应单独一个粒子,
   是通过上面基础值和变化值随机出来的(速度,出生点等) 
4.创建发射器类继承自ParticleState,叫做EmmiterState,需要记录一个UIParticleAsset,需要通过asset里面参数可以生成子粒子的实例。  
   放在自己的子粒子数组里面,形成树形结构。

5.创建继承自SConstraintCanvas的类,
里面有一个EmmiterState类型的参数叫RootEmmiter,根节点发射器。
重写onpaint,再这个函数里面遍历树形结构所有粒子,makebox

6.创建继承自UWidget的类,把SConstraintCanvas暴露给蓝图使用。(照着image写一个就好)

7.最后创建继承自SCompoundWidget类的测试窗口类,用在编辑器中点开菜单时候显示的那个窗口,
    测试窗口类中间有一个emitor类,用来测试粒子效果。如下图(请无视粒子数量显示)



游戏用的模块必须的使用这样的宏
UIPARTICLESYSTEM_API
才能让编辑器用的模块去引用它的函数。


0 0
原创粉丝点击