Unity3d粒子特效:制作火焰效果

Unity3d粒子特效:制作火焰效果


Unity3d粒子特效:制作火焰效果

分析

真实的火焰效果,通常包括:火、火光、火星等组成部分,而火焰对周围环境的烘焙,可以通过灯光实现,如点光源。

针对火焰组成部分,我们可以创建对应的粒子系统组件,实现相应的效果,如下图所示:

Unity3d粒子特效:制作火焰效果

1、Fire 火,火焰的主体部分,因燃烧产生的剧烈化学反应,灵动多变;
2、Flash 火光,即火焰的闪光效果,忽明忽暗;
3、Spark 火星,因高温而升起的燃烧碎屑,行踪飘忽,颜色渐变,效果随机;
4、Point Light 光亮,火焰燃烧对周围环境的烘焙效果;

实现 1、新建工程

1.1、新建3D工程
1.2、导入资源素材(后面会提供素材包)

1、天空盒1个 2、多帧火焰形态图1个 3、地面图1个

Unity3d粒子特效:制作火焰效果

2、场景搭建

2.1、新建场景FireScene
2.2、设置场景天空盒,选择BlueSkybox

原因:系统默认天空盒太亮,火焰效果对比不明显,视觉冲击力差。 设置天空盒方式: Window --> lighting -->setting

Unity3d粒子特效:制作火焰效果


2.3、创建平面(地面)

用于放置火焰,并作为被烘焙对象(即火焰的光照能显示在该物体上) 1、创建Quad,改名Ground 2、置为原点位置,即坐标(0,0,0)

Unity3d粒子特效:制作火焰效果


2.4、调整摄像机视角

1、Scene场景中调整为合适视角(如上图所示视角即可) 2、选中摄像机Main Camera 3、设置摄像机使用当前视角:GameObject --> Align With View 3、制作Fire效果(火)

为了最好体现火的形态变化,此处使用美术人员提供的火的多帧形态图,作为粒子贴图。

火的多帧形态图,素材共4帧,两行两列

3.1、创建粒子系统对象,命名Fire,改其发射方向

正常的火焰效果,火焰粒子应是朝上方向发射; 而新建的粒子系统默认朝前播放粒子,所以需要x轴旋转-90°,改为朝上发射

Unity3d粒子特效:制作火焰效果

3.2、思考:火 需要使用粒子系统的哪些模块?

1、基础模块,主要控制粒子生命时长、大小、方向、颜色、重力等 2、Emission模块,粒子主要模块,主要用于控制粒子发射 3、Shape模块,粒子主要模块,主要用于控制粒子发射器的形状 4、Renderer模块,粒子主要模块,主要用于控制粒子渲染 5、Color over Lifetime,控制火的颜色随生命周期而改变,可使火焰效果更真实生动 6、Texture Sheet Animation,用于控制火焰的多帧形态图,随机切换指定帧

3.3、先设置Renderer模块

1、Material 选择多帧火焰图 2、设置Sort Mode:Youngest in Front (即:后渲染出来的显示在最上/前层)

Unity3d粒子特效:制作火焰效果


3.4、设置Texture Sheet Animation模块

1、Tiles : 是指纹理在X(水平)和Y(垂直)方向上划分的平铺数量,此处分别设置为 2 2、Frame over Time:默认曲线,指定动画帧随着时间的推移如何增加。此处由逐帧变化,改为随机固定某一帧 3、Cycles : 是指动画序列在粒子生命周期内重复的次数,此处设置为4,当然也可根据自身喜爱更改数值

Unity3d粒子特效:制作火焰效果

3.5、设置基础模块

1、Duration 粒子发射时长,此处设置为1秒 2、Start Lifrtime 单个粒子的生命周期,随机1秒以下,此处设置0.3 ~ 0.5秒 3、Start Speed 粒子速度0.1,火多帧图上窜效果有波动,但不宜过大 4、Start Size 0.7 ~ 1 增加随机性 5、Start Rotation -20° ~ 20° 增加随机性 6、Gravity Modifier 重力修改器,因火为升力,此处需改为-1 7、Max Particles 最大数量为25,不宜过多 以上属性可根据自身喜好,微调其数值

Unity3d粒子特效:制作火焰效果

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpyfsd.html