游戏中,诸如烟、火、水滴、落叶等粒子效果,均可以使用粒子系统(particle system)来实现。例如,《明朝传奇》中的篝火,如图2-32所示。粒子系统的最新版本也被称作忍者飞镖(Shuriken),由于场景中添加的粒子系统酷似忍者飞镖,如图2-33所示。dom
图2-32 游戏中的篝火 图2-33 粒子系统,也被称为忍者飞镖编辑器
在使用粒子系统前,先了解一下它的基本属性:模块化
q Energy:表示粒子的生命周期,也就是从生成到销毁的时间。oop
q Looping:决定是否在全部粒子的生命周期结束之后,从新生成这些粒子。spa
q Speed,direction,and rotation:每一个粒子都有transform组件,所以它们的移动方向、朝向,甚至是大小均可以是不一样的。orm
给每一个粒子赋予的值能够分为如下四类:对象
q Constant(常量):表示给全部粒子赋予的值都是同样的,如图2-34所示。生命周期
图2-34 给粒子赋予Constant类型的值 图2-35 给粒子赋予Curve类型的值游戏
q Curve(曲线):给粒子赋予的值随时间变化而变化,具体的值将依据时间而赋予曲线上的值,如图2-35所示。游戏开发
q Random Between Two Constants(两个常量范围内的随机值):给粒子赋予的值随时间变化而变化,但赋予的值仅限于两个常量的范围内。如图2-36所示。
图2-36 给粒子赋予Random Between Two Constants类型的值图2-37 给粒子赋予Random Between Two Curves类型的值
q Random Between Two Curves(两个曲线范围内的随机值):给粒子赋予的值随时间变化而变化,但赋予的值仅限于两个曲线的范围内。如图2-37所示。
建立粒子效果的方式有两种:
q 在Unity里,单击GameObject|Create Other|Particle System命令,在游戏场景中添加Particle System(粒子系统)这个游戏对象。
q 在Unity里,单击GameObject|Create Empty命令,在游戏场景中添加空游戏对象。选中它,再单击Component|Effects|Particle System命令,为空游戏对象添加Particle System(粒子系统)组件。
Scene视图和Game视图里所看到的粒子效果如图2-38所示。
图2-38 Scene视图和Game视图里的粒子效果
Shuriken(忍者飞镖)粒子系统,是采用模块化来管理的,因为有个性化的粒子模块,再配合上粒子曲线编辑器,会使得开发者更容易创做出缤纷复杂的粒子效果。Shuriken粒子系统有多达17个模块,选中Scene视图里的粒子系统,而后在Inspector视图里就能够查看这17个模块,如图2-39所示。
图2-39 Shuriken粒子系统的17个模块 图2-40 粒子效果面板
除此之外,选中Scene视图里的粒子系统时,Scene视图里还会出现Particle Effect(粒子效果)面板,如图2-40所示。面板中各控件的功能描述以下:
q Pause(暂停):单击此按钮,可暂停播放当前的粒子。再次单击此按钮,则继续播放。
q Stop(中止):单击此按钮,可中止粒子的播放。
q Playback Speed(回放速度):可改变粒子的播放速度,数值越大,播放速度越快。
q Playback Time(回放时间):设置播放哪一时刻的粒子效果。
点击Inspector视图里的Particle System模块,便可展开此模块,如图2-41所示,同理于其它模块,此模块能够设置粒子系统初始化时的状态。
图2-41 设置粒子系统初始化状态的模块 图2-42 Start Size值的4个类型
接下来将以初始化时,设置Start Size的值为例,说明设置方法。单击此属性最右边的,会弹出4个类型值的选择项,如图2-42所示。
q 默认选择的是Constant,设置Start Size的值为常量,即粒子播放的过程当中,全部粒子的大小都是同样的,如图2-43所示。
图2-43 Start Size为Constant类型的值时,粒子播放的效果
q 选择Curve时,便可在曲线编辑器中,编辑曲线的形状,设置Start Size的值为曲线上的值,粒子播放的效果如图2-44所示。随着时间的变化,粒子愈来愈大。
图2-44 Start Size为Curve类型的值时,粒子播放的效果
q 选择Random Between Two Constants时,设置Start Size的值为两个常量间的任意值,粒子播放的效果如图2-45所示。在任意时刻,粒子老是有大有小。
图2-45 Start Size为Random Between Two Constants类型的值时,粒子播放的效果
q 选择Random Between Two Curves时,便可在曲线编辑器中,编辑两条曲线的形状,设置Start Size的值为曲线范围内的任意值,粒子播放的效果如图2-46所示。任意时刻粒子都是有大有小的,可是随着时间的变化,全部粒子都会愈来愈大。
图2-46 Start Size为Random Between Two Curves类型的值时,粒子播放的效果
本文选自:Unity 游戏开发技巧集锦大学霸内部资料,转载请注明出处,尊重技术尊重IT人!