菜鸟又回来了,同时给大家带来了新的干货!
前言
大家都知道,Creator3D 3.0预览版本已经出来了,作为菜鸟的我,已经有点迫不及待去上手了。今天周末,终于有时间去体验一下了,顺便做个粒子特效试试水。
效果展示
正文
看了效果,那么到底是怎么实现的呢?
答案是:粒子系统
接下来菜鸟就带大家简单的了解一下Creator的粒子系统,"以下言论仅为个人理解,错误莫喷,希望大家帮菜鸟纠正"
1.主模块介绍
首先菜鸟带大家了解一下主模块,以及主模块中比较重要的几个属性:
文档中对于以上属性的描述:
- 1.dration 粒子系统运行总时间
- 2.capacity 粒子系统能生成的最大粒子数量
- 3.loop 粒子系统是否循环播放
- 4.startLifetime 粒子生命周期
- 5.rateOverTime 每秒发射的粒子数
属性描述补充
- dration:粒子系统运行总时间,他表示的是粒子系统单次运行时间值,在具体点就是 产生第一个粒子到产生最后一个粒子之间的时间,并非第一个粒子显示到最后一个粒子消失的时间
- capacity:粒子系统能生成的最大粒子数量,表示粒子系统单次运行最多可以产生的粒子数,
- startLifetime: 粒子生命周期,单个粒子产生到消失的时间
- rateOverTime: 粒子系统每秒发射的粒子数
注意
- 当rateOverTime=10,dration=1时,每秒钟产生的粒子实际数量为rateOverTime-1,也就是说在总数足够的情况下,运行实际产生的粒子数量为9。再换一种说话,在总数足够的情况下,假设粒子数为n,要想知道n为多少需要两步操作,1. n<rateOverTime*dration,2.对第一步得到的n向下取整
- 第一个粒子产生到最后一个粒子消失的时间t为: capacity<t<capacity+startLifetime
- 当实际产生的粒子数大于capacity,粒子将停止产生,直到有粒子生命周期结束再开始产生
2.魔法阵实现
魔法阵的实现主要分为两部分,底盘和光束
底盘
底盘的效果显示为原点旋转,具体设置:
- 1.dration=5,capacity=1,startLifetime=5,这三个参数的设置确保了粒子运行时间屏幕上只有一个粒子,
- rateOverTime=200 也就是每秒产生200个粒子,那么第一个粒子的产生时间大概为1/200s=0.005s,相当于粒子系统运行后马上产生,
- dration=5,capacity=1,startLifetime=5,rateOverTime=200这四个参数结合,可以实现粒子视觉显示的时间和粒子系统运行时近似相等的情况,在loop状态下可以实现完美的衔接效果
- 粒子的旋转是通过设置旋转模块(RotationOvertimeModule) z轴的旋转,
- 在startLifetime生命周期内 粒子从初始角度匀速旋转到180度
- 设置材质,effect要选择粒子渲染的材质 builtin-particle
光束
- 光束从底部上升,所以需要设置速度 StartSpeed
- 光束的图片是白色的,所以需要设置初始颜色,
- 光束的产生不需要太多,所以将rateOverTime调小一点,设置为2,每秒生成2个
为了粒子产生位置比较随机,使用了发射器模块(ShapeModule)
同时形状在上升的过程中拉长,使用大小模块(SizeOvertimeModule)
透明度逐渐降低 使用颜色模块(ColorOvertimeModule)
![](https://gitee.com/carlosyzy/Creator3D_Particle_MagicCircle/raw/master/file/12.png)
设置光束所需的粒子材质
![](https://gitee.com/carlosyzy/Creator3D_Particle_MagicCircle/raw/master/file/13.png)
到此为止,光束的实现简单描述完毕,文采有限,大家多多包涵,感觉写的还行可以六个足迹奥!如有疑问可以私聊菜鸟奥,随时为大家服务
地址
- 微信公众号:搬砖小菜鸟
公众号回复魔法阵 获取demo源码
==关注公众号,获取更多干货==