1、非事件驱动粒子系统比较适用于制作一般化的场景,相对来说比较简单。就拿下雪场景来说吧,雪花的数量虽然非常多,但是所有雪花的运动规律是相同的,这种粒子系统就可以胜任这样的场景。而事件驱动粒子系统又称为粒子流(Particle Flow),它的使用比较复杂,适宜于制作复杂的粒子动画效果,比如飞机发射导弹击中目标的过程就可以使用这种粒子系统来实现。因为飞机发射出来的导弹是粒子,而导弹喷射出来的尾气也是粒子,这些粒子何时产生、粒子是否具有追逐目标的特性等等,都需要比较细致的控制。而这些细致入微的控制正是事件驱动粒子系统的长项,因为使用这种系统我们可以通过检测一系列的事件来确定粒子的行为。第一部分 非事件
2、驱动粒子系统实例一:烟雾效果1、 最终效果和制作步骤首先让我们来熟悉一下将要制作的效果。这是一个300帧的动画,前150帧中,烟头冒出来的烟缓缓沿直线上升,150帧时窗户打开,风吹了进来,烟雾开始随着风抖动。示例场景中有烟头、烟灰缸、桌子和窗户。窗户的动画已经制作好了,它会在150帧左右的时候自动打开。2、创建并设置粒子系统1)启动3DSMAX,打开面板Create(创建)-Geometry(几何体),选择子类型为Particle System(粒子系统)。2)在Object Type(对象类型)卷展栏中单击Super Spray按钮。3)进入顶视图(快捷键T),拖动鼠标建立Super Spr
3、ay粒子系统的发射器,将其命名为“烟雾_SuperSpray”,调整位置使其处于物体“Cigarette”的位置现在我们看到的图标就是发射器,它有一个箭头,指向粒子发射的方向,烟就会从图标所在的位置沿箭头方向发射。这时如果播放动画,会看到很多小十字星号从发射器中出来沿着箭头方向飞行,这就是Super Spray默认的效果,我们后面需要对其进行调整。4)进入Modify(修改)面板,打开粒子系统的Basic Parameters(基本参数)卷展栏。在Particle Formation(粒子形成)中设置Spread(扩散)参数为2.0。这个参数如果设置为大于0的值,可以让粒子在运动过程中在一定的
4、角度范围内散开,对于制作烟雾效果而言这是必要的。5)打开Particle Generation(粒子生成)卷展栏,对其中的Speed进行设置,降低粒子的初速度(比如1.5)。对于烟雾而言,如果速度过快效果就会失真。6)在Particle Quantity(粒子数量)中选择Use Rate(使用发射率)并在下面的窗口中设置一个较大的值(比如30),也就是让粒子系统“烟雾_SuperSpray”每帧生成30个粒子。这个值越大,形成的烟雾效果就会越细腻,同时也会消耗比较多的系统资源。7)设置Emit Start(起始时间)和Emit Stop(结束时间)分别为0和300,也就是和动画的时间长度相同,
5、这样粒子系统“烟雾_SuperSpray”在整个动画过程中都发射粒子。8)设置Life Time(生存期)为较大的值,比如180,这样烟雾粒子出现之后会隔比较长的时间才消失。3、随风抖动效果现在开始添加空间弯曲影响烟雾,包括两项内容。第一:添加Wind(风)空间弯曲,它让烟雾随风抖动;第二:添加Drag(阻力)空间弯曲,它的作用是让烟雾在上升过程中速度逐渐减慢并停滞下来。1)打开Create(创建)面板,选择Space Wrap(空间弯曲),并在子类型中选择Force(力)2)单击Wind按钮,在场景中拖动建立Wind 物体,将其命名为“风_Wind”,将其放到窗外,箭头指向烟雾的方向。3)W
6、ind空间弯曲的参数比较简单,只需要调整其Strength(强度)、Turbulence(抖动)等参数。由于窗户是在150帧的时候才打开的,因此我们要让空间弯曲“风_Wind”在150帧的时候才产生作用,具体来说就是设置Strength参数的变化。在动画控制栏中单击Auto Key(自动记录关键帧)按钮,拖动动画滑块到第1帧,单击Set Keys(设置关键帧)按钮(注意不要将它和Set Key动画记录模式按钮混淆),在Modify(修改)面板中设置Strength参数为0。拖动滑块到151帧,将Strength参数调整为0.03。然后拖动滑块到150帧,调整Strength参数为0。完成操作之
7、后播放动画可以看到Strength参数在前150帧保持为零,到151帧是突然变成0.03,这就是我们需要的效果。4)现在将空间弯曲和粒子系统绑定起来,也就是让空间弯曲作用于粒子系统。单击Bind To Space Warp(绑定到空间弯曲)按钮,然后单击粒子系统“烟雾_SuperSpray”并拖动鼠标到空间弯曲“风_Wind”上释放鼠标。4、减速效果现在我们来创建一个Drag(阻力)空间弯曲。1)在Create(创建)面板的空间弯曲中单击Drag按钮,在场景中拖动建立空间弯曲并命名为“阻力_Drag”,你可以将它放在任意的位置,因为它的作用效果和位置无关。2)设置Time On和Time Of
8、f分别为0和300,也就是和动画长度相同,在整个动画过程中这个空间弯曲都会起作用。选择阻尼方式为线性阻尼并分别设置X、Y、Z为1%、1%和2%,由于烟雾比较轻盈,因此空气的阻尼效果显得比较小,因此这里设置的参数也相应地比较小。-背景知识关于Drag空间弯曲Drag空间弯曲主要用来制作粒子运动的“阻尼”效果,“阻尼”效果可以按照线形、球形、圆柱形三种方式赋予粒子。Drag空间弯曲特别适合于模拟运动物体在大气或者水中受到阻力影响逐步减速的效果。3)使用和前面绑定空间弯曲“风_Wind”完全一样的方法,将粒子发射器和空间弯曲“阻力_Drag”进行绑定,绑定完成之后在粒子发射器的修改面板中将可以看到有
9、两个空间弯曲对其起作用。5、烟雾材质现在如果进行渲染,是看不到预期效果的,我们还需要对粒子系统发射出来的粒子的外观进行设置并赋予其烟雾材质。1)选择粒子发射器“烟雾_SuperSpray”,进入Modify(修改)面板。在修改器堆栈中单击Super Spray条目,这时可以再次看到粒子系统的参数。2)在Particle Type(粒子类型)卷展览中的Standard Particles(标准粒子)下选择类型为Facing。3)现在来调整粒子的大小。默认的情况下,粒子的大小是统一的,并且在其生存期内都不会改变。但我们需要的效果是,粒子产生之后逐渐变大,然后渐渐消失。我们可以通过设置Grow Fo
10、r(生长)和Fade For(消失)参数来形成这种效果。另外为了防止粒子大小同步变化,我们还需要为尺寸添加一些随机的变化。打开Particle Generation(粒子生成)卷展栏,在Particle Size(粒子大小)中对上述参数进行设置。4)现在开始制作材质。对于制作烟雾效果而言,我们应当使用柔和的、具有半透明效果的材质。由于前面我们使用了Facing形式的粒子,因此一个圆形渐变并且边缘透明的材质就可以实现这种效果。A.打开材质编辑器(快捷建M),选择一个空白样本球,设置其Diffuse(散射)颜色为纯白色,Specular Level(反射级别)和Glossiness(光泽度)为0。
11、在Self-Illumination (自发光)中选择Color复选框并设置自发光颜色为灰色(灰度144),这样得到的烟雾是灰色的。如果你想调整烟雾的颜色,设置自发光颜色就可以实现。在Shader Basic Parameters(着色器基本参数)中勾选Face Map(面贴图)。B.打开Maps(贴图)卷展栏,单击Opacity(不透明)贴图通道按钮,从弹出的Material/Maps Browser(材质/贴图浏览器)窗口中选择材质类型为Gradient(渐变)。在该贴图的参数中我们只需要在其Gradient Parameters(渐变参数)中设置Gradient Type(渐变类型)为Radial(圆形)就可以了,其他参数不需要调整。至此,烟雾效果的制作已经完成, 可以使用渲染工具渲染动画了。在下一个例子中,我们将介绍如何制作水流效果。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1