您所在的位置:首页 > CG多媒体 > 3DMAX > 正文
3DSMAX图文教程:事件驱动粒子系统——喷泉效果(二)
http://design.chinaue.com 2008-9-24 14:55:15 中国大学生网 我要评论() 

  4)选择事件“粒子发射_event”中的speed 01运算符,在右边设置speed为300,variation为30,divergence为4.0。variation选项紧靠在speed参数下面,因此它的作用是对粒子的飞行速度进行随机变化。而divergence参数的作用则是控制粒子飞行方向的扩散。这些参数和非事件驱动粒子系统中的都是相似的,粒子视图只不过提供了一种不同的设置方式。



  5)现在我们要让空间弯曲“下落_gravity”作用于粒子系统了,前面介绍非事件驱动粒子系统时,我们使用bind to space warp(绑定到空间弯曲)的方式来做到这一点。对于粒子流,我们要使用不同的方式,这种方式虽然不够直观,但是更加灵活。

在事件“粒子发射_event”上单击鼠标右键,从弹出菜单中选择append(添加)->operator(运算符)->force(力),然后就可以看到事件“粒子发射_event”下面多出了一个运算符,名称为force 01。

  选择force 01,在右边的属性面板中单击by list(通过列表添加)按钮,然后选择空间弯曲“下落_gravity”。

 这时播放动画可以看到“下落_gravity”的强度太大了,粒子飞出来之后,立刻就被“拉”回了地面,选择空间弯曲“下落_gravity”,将其strength参数设置为一个较小的参数。



particle view (粒子视图)

粒子视图是 3dsmax 中操控粒子流的主界面。它的界面由四部分组成。

粒子视图内部的操作流程

1 、当我们在场景中添加一个粒子流源之后,在粒子视图中会自动建立一个以粒子流源命名的事件,这个事件是 global event (全局事件),在这个事件内部的运算符将会影响该粒子流源产生的所有粒子。和全局事件一道生成的还有一个事件 event 01 ( event 01 是系统的默认名称,我们对这个名字进行修改),这个事件中必须包含一个 birth 运算符,粒子系统才能正常发射粒子。

2 、从下面的运算符库中拖放更多普通远算符到 event 01 事件内部从而实现对粒子的更多控制。

3 、在 event 01 事件内部添加 test (测试)运算符(这种运算符也能在下面的运算符库内部找到), test 运算符根据一定的条件来确定哪些粒子符合条件,并将其“输出”到其他事件。

4 、添加其他事件,接受 test 运算符输出的粒子并进行进一步的处理。


  5、溅起水花

  水在重力的作用下落到水池中应当溅起水花,下面我们就来制作这个效果。

  1)从粒子视图下面的运算符库内拖放一个collision(撞击)测试到事件“粒子发射_event”内部,放在最下面(你也可以使用上面单击鼠标右键从弹出菜单中选择append的方式添加,结果是一样的)。

  5、溅起水花

  水在重力的作用下落到水池中应当溅起水花,下面我们就来制作这个效果。

  1)从粒子视图下面的运算符库内拖放一个collision(撞击)测试到事件“粒子发射_event”内部,放在最下面(你也可以使用上面单击鼠标右键从弹出菜单中选择append的方式添加,结果是一样的)。



  2)选择新添加的collision 01运算符,在右边的属性面板中单击by list(通过列表添加)按钮,选择“水面_pominiflect”。

  在test true if particle(如果粒子出现以下情况时测试返回值为true)下面的collide中选择speed为bounce,这样下落的粒子在碰到空间弯曲“水面_pomniflect”时会反弹起来。



 

 3)上一步中设置的bounce参数只能让粒子原样弹起来,但是我们希望要的效果是不仅仅是反弹,而是原来的水花消失,同时溅起更多的小水花。这种效果可以使用spawn(产卵)测试来实现。具体来说就是,事件“粒子发射_event”中collision运算符输出的粒子还需要经过一个新的事件处理,这个事件能够让粒子“产卵”——产生更多的小粒子。

  从粒子视图下方的运算符库中拖放一个spawn测试到上面的窗口,这时会自动创建一个事件,将其命名为“溅起水花_event”



  4)选择事件“溅起水花_event”中的spawn 01测试,在右侧的属性面板中选中delete parent(删除父粒子),也就是说,当粒子落到水面溅起小水花时将原来的水花删除掉。然后设置offspring为较大的值,比如20,也就是一个大水花溅起的小水花的数量,紧接在下面的variation参数对这个数值进行一些随机的变化。另外还要设置下面的speed中的variation和divergence,这些参数的含义都很明显,不再一一解释了。



  我们将这些参数串起来解释其含义就是,每个水花从空中落到水面后,将溅起大约20个(offspring)小水花,同时原来的水花消失,小水花的具体数量会有10%(variation)的波动;这些新产生的水花基本继承原来水花的运动速度(inherited),但是会有30%的波动,并按照这个速度在一定的扩散角度内(divergence)向上溅起。

1页;当前位置:1/1 [1]
现有人对本文发表了评论   [查看所有评论]
匿名发表 申请加精