前言:
各式各样的制造工坊常常会出现在任意类型的游戏中,铁匠铺、车间、工业建筑等等,那么如何快速且简单的实现一款可复用的烟雾特效呢,先在脑海中想象一下我们生活里常见的烟雾吧。
初步实现:
在经过简单的想象以后,我们可以总结烟雾有以下一些普遍规律:
- 垂直向上飘散
- 有颜色且半透明
- 大小不规则
- 速度不规则
- 容易受风的方向影响
暂时总结一些基本规律以后,我们尝试按照上面这些特效来制作吧:
- 首先创建一个空Unity场景用于观察测试。
- Hierarchy - 右键 - Effects - Particle System 得到一个默认粒子。
- 我们发现,这个默认粒子已经满足了垂直向上飘散的这个特性。但如果把每个白点想象成一团烟雾,那么密度可能有点大了。我们来调整发射器Emission每秒发射的数量,默认是10,我们调整到3左右试试。
- 目前,我们观察到的这些白点还是挺抽象的,对于想象力不太丰富的同学而言可能看着很难受,那接下来我们来添加一个非常重要的参数 Renderer。它代表着这些粒子以什么样式、材质来进行渲染。
如果会一点美术基础,那么就自己画一张白色单个烟雾团的图片,然后制作成材质替。
如果不会美术,就想办法找一找白色单个烟雾团的图片,也制作成材质替换。
- 注意:通常情况下,在粒子系统使用的材质需使用到 Particles/Standard Unlit。
- 这里我也是随便找了一张图,我们来看看替换后的效果,有一点烟雾的感觉了,但还是需要继续按照我们总结的规律来调整:
- 接下来我们依次解决如下:
- 有颜色且半透明 - Start Color参数,颜色看自己的需要:
- 大小不规则 - Start Size 和 Size Over Time 两个参数共同控制整个粒子周期的大小变化,非常容易理解,先简单调整到由小变大吧。
- 速度不规则 - Start Speed 这里看模拟的具体对象是什么,可规则也可不规则,调整右边的小三角来改变参数的形态,这里暂时用定值观察。
到此我们就大概能得到如下的效果,再按个人需要调整上面这些参数,基本能达到可以使用的状态了。
更多细节
如果想要添加更多烟雾的细节,可以尝试在以下方便进行调整:
- 观察上图的蓝色线条,如果我们希望扩散更收束一些。可以调整Shape参数中的Angle值,或者直接更改Shape也就是发射器的形态。
- 如果我们希望烟雾产生方向或者不规则的飘动,可以尝试使用Noise噪点特性,修改里面的参数看看会产生什么样神奇的效果吧:
- 如果你还希望你的烟雾团能产生一些随机的旋转,那么Rotation Over Lifetime属性可以很好的帮助你实现这个愿望了。
总结
制作特效是一件非常有趣的事情,有些特效,比如今天我们尝试的烟雾是可以符合现实世界规律的,那当然游戏里也有太多特效是现实中完全不存在的,所以观察 + 想象 是制作一个出彩特效的前提,那么新手可以像文中一样,先总结规律再逐个击破吧。