RecursiveFrog 发表于 2022-1-11 11:26

Unity特效基础——烟雾特效

1.前期准备

1.烟雾贴图


图1-1.png

这里使用的是连续帧动画列表,按顺序播放的话是烟雾变化的循环动画。这些素材可以在很多地方找到,也可以自己在Photoshop中去制作素材。
2.创建项目与场景

2.1 创建Unity项目


图2-1

如图所示,创建一个Unity 3D项目,本例使用的Unity版本是2019.4.23f1c1。
2.2 创建场景


图2-2

在Project视图中右键,Create > Scene,命名为Smoke。
3.创建烟雾材质

1.导入贴图,将前期准备的烟雾贴图导入到unity,可以直接拖拽进Assets目录中,最好自己创建一个Textures目录便于分类管理。


图3-1

2.修改贴图的属性,使其适合作为烟雾的材质。选中Smoke_0039贴图,在右侧的Inspector窗口中按照如下图设置,其中最主要的就是Texture Type属性,务必设置为Sprite(2D and UI),以便能够显示透明通道。修改完成之后记得点击Apply以便应用修改。

图3-2

3.创建材质。先创建一个Materials目录便于管理材质,然后在目录中右键,Create > Material,并命名为Smoke。
4.为材质设置Shader。将Smoke的shader属性设置为如下图所示,Particles/Standard Surface,这个是专用于粒子系统的Shader。给材质赋予贴图,在Shader的Maps中有一个属性叫做Albedo,这个是基础颜色,将刚刚导入的Smoke_0039贴图拖拽到其中。

图3-3

到此,粒子系统的材质就创建完成了。

4.粒子系统

4.1 创建粒子系统

. 在Hierarchy层级视图中右键,Create > Effects > Particle System 创建粒子系统,将物体名称改为Smoke。


图4-1

4.2 修改粒子系统的Renderer模块。

找到Renderer模块,按照如图4-2所示的属性来修改。
1.首先是Material,将材质设置为上述步骤中创建的Smoke材质。
2.然后是Sort Mode,设置为Youngest in Front,后创建的粒子会显示到前面。


图4-2

4.3 修改Texture Sheet Animation模块。

找到Texture Sheet Animation模块,按照图4-3所示属性来修改。
这个是贴图列表动画模块,可以让粒子的贴图按照图集顺序播放序列帧动画。根据上述图集中的行数与列数,将Tiles设置为X:6,Y:6,意为6行6列。下面的Time Mode可以使用LifeTime或者FPS,如果是LifeTime模式的话,动画是按照粒子的生命周期时间来播放,选择FPS的话就是按照固定帧率来播放。根据特效需要可以灵活选择方式。


图4-3

4.4 修改主模块。

如图4-4所示,修改主模块的属性。
其中Gravity Modifer就是重力修改器,设置为负值可以让烟雾加速上升,符合物理规律。不要忘了将Start Speed初始速度设置为0。初始生命周期和初始旋转可以设置随机一点。


图4-4

4.5 修改发射模块

如图4-5所示,修改发射模块的属性。
Emission控制粒子发射的速度,Shape控制粒子发射的形状。


图4-5

4.6 修改Color Over Lifetime属性。

如图4-6所示,修改生命周期颜色属性,设置为两头透明。


图4-6

4.7 修改Size Over Lifetime属性。

如图4-7所示,修改生命周期大小属性,通过曲线设置为从小到大。


图4-7

最后效果如下:


最后效果图

项目资源文件做成了unity package,有需要的朋友可以自行下载。
链接:https://pan.baidu.com/s/1nzsGzJhdlGQiNa1E0ycmKg
提取码:59mp
页: [1]
查看完整版本: Unity特效基础——烟雾特效