thinkingParticles中文网站 > 使用技巧 > 如何实现 thinkingParticles动力学组之间的交互(定义粒子组)

如何实现 thinkingParticles动力学组之间的交互(定义粒子组)

发布时间:2021/05/17

thinkingParticles的强大之处不仅体现在其拥有丰富的控制器,可制作各种不同类型的粒子特效,还体现在其动力组功能的强大性。通过运用动力学组之间的交互功能,我们还可以制作更加复杂的粒子特效。

动力学组的交互一般会包含粒子组的定义与交互作用两部分。本文会先介绍粒子组的定义,并会将演示中的粒子组定义为从球体出生的粒子。

图1:从球体出生的粒子

一、创建主控系统与动力学组

首先,如图2所示,在thinkingParticles的主控系统中创建粒子组1与粒子组2,便于后续定义粒子组使用。

图2:创建粒子组


接着,如图3所示,在thinkingParticles动力学组中创建两个动力学组,分别是“定义粒子”与“交互”。

图3:创建动力学组


然后,如图4所示,选中“定义粒子”动力学组,并在右侧的参数面板中将其组别(Group)调整为1(即主控系统中的粒子组1)。

图4:定义动力组的粒子组

二、制作粒子从球体出生

完成以上设置后,接下来,我们将进行粒子组1的定义。

如图5所示,先使用3ds MAX的创建图形工具,创建一个球体。

图5:创建球体


然后,打开thinkingParticles的操作面板,如图6所示,在 “定义粒子”动力学组的节点编辑区创建Node节点(Helpers-Standard-Node),该节点可用于定义3ds MAX的对象。

完成Node节点的创建后,单击其右侧参数面板中的“拾取对象”按钮。

图6:创建Node节点

然后,返回3ds MAX的编辑区,如图7所示,点击一下球体即可完成对象的拾取。

图7:拾取球体


球体拾取成功后,如图8所示,“拾取对象”按钮会变成拾取的对象名称。

图8:完成球体的拾取

完成球体的拾取后,如图9所示,创建SurfacePos节点(Helpers-Position-SurfacePos),该节点可获取所选对象的表面信息,以控制粒子在对象表面如何分布。同时,在节点的参数面板选择“表面(Face)”。

图9:创建SurfucePos节点

完成SurfucePos节点的创建后,如图10所示,将Node节点的Node输出端口与SurfucePos节点的Node输入端口相连接。

图10:连接节点


最后,如图11所示,创建PositionBorn节点(Operator-Generator-PositionBorn),并将其Position输入端口与SurfucePos节点的Position输出端口连接,即可将球体的表面信息传输到PositionBorn节点。

图11:创建PositionBorn节点

由于我们制作的特效是用于定义粒子组1的,因此,如图12所示,需要在PositionBorn节点的参数列表中将其组别(Group)调整为粒子组1。另外,也可以调整一下粒子的数量、年龄等增强效果。

图12:PositionBorn节点参数设置


完成以上设置后,我们就可以获得如图13所示的“粒子从球体出生”的效果,同时,也定义了粒子组1。

图13:粒子从球体出生

三、小结

综上所述,通过使用thinkingParticles动力学组的组别(Group)选项,可为不同动力学组赋予不同的粒子组,而在这些动力学组制作的效果,也起到定义动力学组的作用,可用于动力学组之间的交互。

在《如何实现 thinkingParticles动力学组之间的交互(实现交互)》一文中,我们会继续讲解交互功能的实现。感兴趣的话,可前往thinkingParticles中文网站。

作者:泽洋

标签:thinkingParticles动力学组定义粒子组

读者也访问过这里: