摩尔网 > CG教程 > Autodesk Maya教程
首先我们使用maya的动力学模块创建一个粒子发射器开始,选择Particles>Create Emitter. 使用 directional emitter这种发射形式,使用这种发射形式,可以控制粒子的发射方向,并且能使他们以一种锥形的发射,设置方向direction为 0,1,0,这样粒子将沿着y轴向上运动,spread这个属性掌管着锥形发射的张开宽度,设置为0.2,这样的发射形状将是很尖的一个圆锥,有些像一个喷射的水龙头定义这喷射的宽度,设置为0,粒子将沿着直线向上发射。 emission rate 和 speed 使用了默认的设置 100,emission rate代表单位时间从粒子发射器发射的粒子的数目,(在这个例子中是每秒24帧),speed这个值可以一直调试直到合适为止,这个属性控制粒子发射的有多快。
经过多次尝试,设置speed为0.3,speed radom为0.5,speed radom使得一些粒子的有一些不同的速度,这是个很有用的选项。好了,现在粒子的速度有了些不同(不像以前那么一致了)但他们还是基本上沿着相同的方向直线向上。(见下图)
通过给粒子添加一个扰动场turbulence field,可以使这些粒子有些随机的运动,“场”在maya里面是一个能够帮助已发射的粒子做规则运动的一种物体,给这些粒子添加一个场来制作一小束被运动的空气作用的烟,用这个场来模拟真实世界的自然力,选择粒子再选择Fields>Turbulence。
先选择粒子,再选择场,场将自动连接到粒子。
现在对扰动场的设置项进行动画来产生最好的效果,把时间范围调整到360帧长,在开始帧,在turbulence field 的 magnitude属性上设置为5,点右键key selected。同样的办法在80帧设置为4,110帧设置6,160帧设置3,210帧设置5。
把时间打到第一帧,(这是为了更自然的动力学模拟效果,清空刚才的动画),开始播放,可以看到粒子被吹到显示器的边缘外了,如下图。
很明显,粒子需要向上慢慢升起,就像真实的从香烟里冒出来的烟一样,为了达到这个效果我们还需要另外的一个场,来退或者拉使得粒子向上运动,选择创建一个Radial Field,这个场可以把粒子向中心拖动,相反的话也可以把粒子向外推。 实现这些需要设置他的magnitude值,正值试向外推,负值是向中心拉。gravity field重力场也可以实现把粒子向上推(把magnitude值设置为负),但是Radial Field把粒子拖向一个特定的位置,使得粒子保持一个很好的流态,(就像限制着他们主要向上运动)
选择Fields>Radial创建一个新的场,向上提一些,放到粒子发射器z轴向稍微靠做的位置,这样的话,扰动场把粒子推向右边,而Radial Field把粒子又吸回到左边,产生一个很好的弧形运动。
使用和上面扰动场设置magnitude属性关键帧的办法一样,设置Radial Field的magnitude属性。在100帧-0.5,145帧-0.3,260帧-0.5,360帧-0.3。
播放动画,可能这个新的场没有对粒子产生作用,检查一下他们之间的连接, Window>Relationship Editors>Dynamic Relationship 打开动力学关系编辑器(Dynamic Relationships Window )。
可以通过打开场的Use Max Distance这个属性,把Max Distance设定一个合适的值,只影响半径范围内的值,通过这种办法可以不使用体积型的场这种情况,但是使用体积型的场更简单一些,更具有可视化。
把这个正方体的扰动场放到球形的拖动场上面,大约交叉三分之一吧。这个场将把烟的顶部消散一些。
现在粒子的运动已经像烟了,我们需要更真实的效果,选择粒子打开属性编辑器,第一个操作就是改变粒子的渲染类型,这里使用硬件渲染,所以就不选cloud, blobby surfaces,和 tubes这些类型了,我们Particle Render Type(粒子渲染类型)里面选择multi-point ,这种方式将增加渲染粒子的数目,增加的方式是在每个粒子的一定半径范围内增加一些小点,这种方式很好因为每个额外增加的小点不是新粒子,因此它不会降低系统的速度,这种办法可以不通过增加额外的粒子就可以表现比一般得规则得小点好很多的现象。
一旦选择了multi-point这种渲染方式,按下Add Attributes For…Current Render Type.这个按钮,这样将创建multi-point这种渲染方式的一些相关的属性,例如MultiCount, MultiRadius 和 Color Accum,MultiCount掌管着每个粒子能渲染出几个“小点”,而MultiRadius这个属性每个粒子再多大的半径范围内增加额外的“小点”,设置MultiCount为18,设置MultiRadius为0.9,把Color Accum 选像打开,这将允许当粒子堆积的很厚的时候颜色可以重叠,累积。这将使得粒子有更多的体积。
说到粒子的颜色,需要为粒子增加一个颜色,为了增加颜色,先给粒子物体增加一个颜色属性,在粒子属性变机器里面的Add Dynamic Attributes这个项目下面,点击“Colour”这个按钮,出现一个小的窗口,选择Add Per Object Attribute , 按下Add Attribute。这样就给整个粒子物体添加了一个颜色属性(还可以为每个粒子添加不同的颜色)。
在Render Attributes下面多出了3个属性,Color Red, Color Green, Color Blue,每一个都代表了单独的粒子的RGB颜色的一个通道值,给粒子设置一个灰暗的值,R, G,B都是0.6。下一个设置的属性是Lifespan,选择一个简单的模式来把个Lifespan Mode ( 在ifespan Attributes” 下面) 设置成一种随机的形式,把Lifespan设置成20, 把Lifespan Random设置成15,这样每个粒子的生命值将是20秒,并增加随机的15秒。
下面再增加一个粒子的透明度的属性,在Add Dynamic Attributes下面点击Opacity,出现对话框,点击Add Per Particle Attribute,这样使得每个粒子有区别的消失,消散(实际是变透明)以此创建更加光滑,更加自然的烟雾消散。
新的属性出现在Per Particle (Array) Attributes的下面,在opacityPP这一栏的后面,右键单击,出现一个对话框,选择Create Ramp and the text,在opacityPP这一栏的后面会出现<- arrayMapper1.outValuePP,在这上面右键单击,选择Edit Ramp,出现了ramp的属性编辑筐。
在这儿我们创建一个很薄的烟,当他们堆积起来的时候就显得很厚了,创建一个通体是黑暗的ramp就很必要了。在ramp中,颜色越黑,粒子就越透明,白色代表粒子完全不透明。黑色代表粒子是完全透明的。
把ramp设置成这样(如图):Position 0.035 Value 0.016;Position 0.075 Value 0.074;Position 0.185 Value 0.050;Position 0.400 Value 0.025。
剩下的就是渲染的问题了,由于使用了硬件渲染的粒子,我们只能使用硬件渲染的办法,打开Window>Rendering Editors>Hardware Render Buffer,这就打开了maya的硬件渲染窗口,一般除了这些粒子,别的物体也可以使用硬件渲染,就是硬件渲染不能表现很细致的灯光效果和材致贴图,好在这个场景中别的的物体,就使用硬件渲染了。
打开硬件渲染窗口,默认的是透视图窗口,稍微移动旋转一下摄像机,选择一个好的角度,这时硬件渲染窗口会实时的变化。
硬件渲染窗口,打开Render>Attributes,这里属性可以控制图像的分辨率,文件名,帧范围等一些参数。在Multi-Pass Render Options下面,打开Multi-Pass Rendering,选择高一的数值,选择最高的36,Edge Smoothing Value为20,Motion Blur为6,不打开Multi-Pass Rendering,粒子将被渲染成简单的小点。打开之后,输入以上的值,会创建很好的效果。
打开Render>Render Sequence将会按照属性编辑器设定的时间范围进行渲染,点击硬件渲染框下部中间的按钮进行渲染。
如果硬件渲染没有正确的渲染(一片黑,什么都没有)就打开Solvers>Create Particle Disk Cache,这将运行粒子的动力学模拟,并以文件的形式保存到硬盘,这有助于解决在硬件渲染器中的怪异的问题。
下面可能是最重要的部分了,现在的这屡烟是以一种很直的方式向上飘荡,我们进一步还需要有些细微的差别,所以我们创建另外的一个场,拖动场drag field, 把它连接到烟这个粒子物体上。
这种场,给连接的粒子物体创建了一种拖拽力,无论在哪都可以来降低他的运动速度,使用这个场就是为了仅仅降低烟一个特定段,效果就像影响整体一样。
选择这个拖动场,打开属性编辑器,打开Volume Shape 这个属性 ,创建一个体积型场,选择球型( Sphere ),这样的话,这个场将仅仅影响进入球体的内的粒子的运动。把magnitude从默认的0.05变为2.4,把球的位置和大小调整一下,放到这屡烟中间的位置。
用这种办法,使得烟上升,然后停下来,堆积起来变厚变粗,然后冲出拖动场球后,再加速,变细,向上向着radial field运动。
在烟的顶部在家一个扰动场,使得烟破碎一些,创建扰动场Fields>Turbulence,同样通过动力学关系编辑器和粒子连接,和尚免得拖动场一样,打开Volume Shape属性,这回使用,方盒型(Cube)。
上一篇: Maya制作夜景下炫酷的跑车流光效果 下一篇: Maya之MR全局光渲染器的介绍