当前位置: 主页 > 平面设计 > 用表达式实现MAYA粒子的阶梯状

用表达式实现MAYA粒子的阶梯状

  • 2022-02-05
  • 来源/作者: PS.ONEGREEN.ORG    / 佚名    
  • 3 次浏览

  这是一篇关于Maya粒子的小教程,仅仅介绍的是一种方法,为了使讲解方便,我把场景做了一些删减,相信大家知道了方法之后,一定能够做出更复杂的动画来。按照惯例,我们还是先看一下最终的效果。如图1。

  用表达式实现MAYA粒子的阶梯状

  图1

  好了,我们现在就开始制作吧。

  1、首先我们创建一个plane,点击Create / Polygon Primitives / Plane box,并开启polygon plane options 窗口,设置如图二所示:我这里只是为了方便,大家可以尝试不同的数值,但有一点要说明的是,下一步所要创建粒子的个数是与你所建立的这个平面的顶点数是一致的。好了,我们开启Poly Count 显示,我们可以看到其顶点个数,我这里刚好是100。

  用表达式实现MAYA粒子的阶梯状

  图2

  2、现在建立粒子。点击 Particle tool box,在Number of particles 中设置数值,也就是你所建立平面的顶点个数,我这里是100,在视图中点击左键,按回车键确认。在粒子选择的情况下,按住SHIFT,点选平面,选择菜单Particles/Goal ,为其建立目标。播放动画看一下,粒子被全部依附到平面上,保持其选择状态,选择菜单Solvers/Initial State/Set for selected,这样,就设置了粒子的初始状态。把平面隐藏吧,我们暂且不需要它了。

  3、接下来我们再建立一个polygon cube物体,设置如图3,保持pCube1的选择状态,按住SHIFT键并点选粒子,点选菜单Particles/Instancer(replacement),好啦,把这个

CUBE也隐藏吧。到此为止,我们的准备工作已经完成了。

  用表达式实现MAYA粒子的阶梯状

  图3

  场景如图4所示。

  用表达式实现MAYA粒子的阶梯状

  图4

  4、现在才开始制作重点。选择粒子,在属性窗口中找到Add dynamic Attributes卷展栏,点击general按钮,为其建立一个名为cyclePP的动态属性,设置如图5:这样,在per particle(array) attributes 卷展栏中大家可以看到新增的这个属性。点右键,选Runtime Expression,写入如下

表达式:particleShape1.cyclePP=((floor(particleShape1.particleId/10)+particleShape1.particleId)/10+time)%1。

  用表达式实现MAYA粒子的阶梯状

  图5

  5、选择粒子,我们再为其建立一个名为rampPP的动态属性,设置与上次相同。点击右键,选择Create Ramp,再次点击右键,选择<-arrayMapper1.outValuePP/Edit Ramp,设置如图6所示。

  用表达式实现MAYA粒子的阶梯状

  图

  6、选择粒子,在属性窗口中找到lifespan attributes(see also per-particle tab)卷展栏,设置lifespan Mode属性为live forever。打开Hypergraph窗口,选择particle1节点,点击菜单graph/input and output connections,用中键拖动particleShape1节点到arrayMapper1节点之上,松开鼠标,选择Other,于是调出Connection Editor 窗口,连接cyclePP和vcoordPP两属性,如图7所示:关闭窗口。

  用表达式实现MAYA粒子的阶梯状

  图7

  7、保持粒子选择状态,在属性窗口中找到instancer (geometry replacement)卷展栏,激活allow all da

ta types属性,设置Visibility为rampPP。按播放键看看效果吧。

  用表达式实现MAYA粒子的阶梯状

  图8