unity3D烟花制作-来放烟花吧!

3D游戏第八次作业-烟花粒子效果实现

结果展示

先来个结果镇楼

下面是一个动画演示:

最终效果演示

本次项目使用的资源:

Unity Particle Pack:使用的Flame 01以及Twinkle等material均来自这个包,且该包有较多的示例。

粒子效果制作

我们的烟花分为以下5个部分组成:

其中,Firework主体也是一个粒子系统,它拥有下辖的5个粒子系统作为子部件。我们利用粒子系统面板中的 Sub Emitters 使得Firework所发射的每个粒子都拥有子部件的粒子效果。实际上,Firework主体只是提供一个粒子的移动,具体的粒子渲染效果全部由Firework的五个子部件来完成;

我们将从各个子部件的实现开始,逐步讲解,最后在Firework中完成各个粒子效果的合并;

trail子部件

即我们的烟花在爆炸之前飞行过程中产生的尾迹:

我们可以看到,我们的尾迹中的粒子在运动过程中发生了一些变化,总结如下:

  • size:粒子的大小先变大再变小;
  • color:粒子的颜色随着运动时间的变化而变化。
  • velocity:粒子在产生后向四周扩散,使尾迹变大,如同烟雾;

那么我们如何创建这样一个trail粒子效果呢?

  • 创建tail: 右键EffectsParticle System 创建一个新的粒子系统,然后我们给它取名为 trail

  • 设置粒子大小动态变化: 打开trail的粒子系统面板,勾选 size over lifetime 选项。并在面板下方设置粒子在运动中的size变化的曲线如下。

    通过我们的size变化的曲线,我们可以知道我们的trail所发射的粒子的大小变化为:
    缓慢变大保持一段时间大小缓慢变小瞬间变大瞬间变小
    最后一段的瞬间变大再瞬间变小是为了模拟粒子灰烬的闪动效果。

  • 设置粒子颜色动态变化: 打开trail的粒子系统面板,勾选 color over lifetime 选项。并设置颜色如下:

    最后一段颜色接近于橙红色,和粒子动态变化最后一部分的瞬间变化相结合,可以模拟出粒子灰烬的闪动效果。

  • 设置粒子运动: 打开trail的粒子系统面板,勾选 Velocity over lifetime 选项。选择粒子运动的速度变化方式为 Random between two curves

    然后令x轴和z轴方向上的速度变化曲线如下:

    而y轴方向上的速度变化不要改变,一直保持为0即可。

    这样,尾迹粒子在被产生之后就会向四周随机扩散,使得尾迹整体变大,模拟烟雾的扩散效果;

  • 设置粒子的发射方向: 打开trail的粒子系统面板,勾选 Shape 选项。并选择shape为 sphere 。这样粒子在产生的时候就会在烟花的周围随机产生,而不是直接从烟花尾部直直地产生,更加贴合现实。

  • 设置Emission和粒子系统主模板

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值