在目前国内的动画中,很少见到动画植物,动画植物能够使画面看着更加生动,增加真实感,生长和风动的效果都能给人带来很强的视觉冲击力,比呆板的相机动画更能吸引人。
目前能够用于制作风动效果的植物插件有treestorm speedtree和Growfx,能够制作生长动画的是xfrog和Growfx(由于个人见识原因,可能有其他插件也能制作,没有提到请大家原谅)。其中xfrog和speedtree植物精度不高,并且带有镂空贴图,VRay渲染器渲染镂空贴图特别慢。这两个插件首先出局,剩下treestorm和growfx,两个插件各有特点。
treestorm拥有自己的植物库,方便调用,直接加载风动参数就可以制作风动动画,但是普遍有人反映说treestorm的树库的树型不好看,并且调节都是只能调节到跟这个树形接近的形态,树形态调节的自由度不高。并且不能制作生长(The.Third.和The.Seventh中的植物就是用treestorm制作的,但是主干部分,Alex Roman是用多边形单独制作了的,结合带风动的动画的分支和树叶才有那样的效果)。
Growfx加风力和生长都很简单,前提是要有Growfx调节出来的未塌陷的文件,但是官方的库植物数量很少,而且形态也不是很好。好在这个插件自由度很高,完全可以自己创建植物,一旦创建出一颗植物,做好生长和风的设置,再随机调节几个参数,就可以得到另一个形态。当然,植物形态好看与否,跟自己对树的认识有关。
注意:这两个插件的植物都不能利用现有的植物模型制作风动和生长动画。必须为插件的源文件格式才能进行风或者生长的控制。
今天就讲解一个简单的例子,用Growfx制作一颗带动画的树。
1.首先设置系统的单位为cm和cm,这样设置的原因是,系统单位设置为cm能保证把你的模型导入一个以mm为系统单位的场景中尺寸为正确的尺寸。3ds Max自动换算单位后,单位刚刚好,然后显示单位设置为cm是方便调节,因为Growfx默认的长度为100,如果显示单位为mm或者m,那么就表示当前植物长度为0.01m和100m,这样的单位显然不合适。你得花费大量的时间去调节参数以让它符合当前场景的单位,所以设置为cm为100cm是最合适的。
2.在命令面板的geometry下选择exlevel然后点击growfx按钮,在视图中创建一个图标:
3.在paths面板下点击最左边的新建路径按钮,会自动创建一条路径,这个路径就可以作为一根树干或者叶子,这个看实际情况。然后点击path parameters下的distributors path按钮,会弹出一个新的对话框,然后在新弹出的对话框中再点击一下,选择第一种方式分布,这种方式会让路径直接从图标处直接生长出来。
4.我们再点击path parameters下的modify direction按钮,在弹出的面板中设置路径的长度和分段数为1100cm和20cm.长度和分段默认为100和1,分段过低的话,会造成面数过多而停止响应。目前视图中还是只能看到一根笔直的线条。
5.接下来点击path parameters下的mesh parameters按钮。打开网格参数面板。点击创建第一种圆柱形式的网格。
6.这个时候可以点击viewport display下面的meshes按钮来切换显示形态为显示网格,这个时候就可以在试图中看到网格物体了,但是圆柱的半径太小了。整个枝干看起来很细小。我们再打开mesh parameters窗口,使用radius后面的图形控窗口控制圆柱的半径。树干一般都是上面小下面大。这个图形控制器的最左边表示的是路径的开始点,右边表示路径的结束点。所以我们这里设置左边就是树干的根部位置半径为10,右边也就是顶端的半径为1。最后调节optimize的值来减少横向上的分段数。
7.这是我们发现树干还是很直,我们需要返回path parameters下的modify direction面板,在下面的direction modifiers里面添加如下2个控制器并且设置如下参数来控制主干的形态,让它产生一些弯曲。
8.现在我们已经创建完了主干,接下来在paths下面再创建一个路径,我们用它来创建第一层分支。单击distributors path按钮,再弹出的窗口中选择第三种分布方式path distributor,在已经有的路径上面分布(已经有的路径就是主干)。
9.然后再分别设置distributors path、modify direction和mesh parameters窗口的参数如下图所示。
调试完毕后,你就可以得到如上图右边所显示的形态。
10.这个时候我们创建完了第一层分支,接着创建第二层分支,我们不必重新进行上一步的操作,我们可以利用已经创建好的第一层分支的路径复制一份,再修改一些参数比如长度、密度等。来得到第二层分支。首先在paths卷展览下面单击复制和粘贴按钮,就会发现已经复制成功了。
11.接下来我们来修改参数,图中我用红框标明的地方就是修改的参数,其他的没有进行任何改动。
12.然后继续创建第三层分支,方法如同创建第二层分支一样,主要更改了密度和长度。
13.接下来我们制作树叶,在paths里面新建一个路径,distributors path里面添加下图一的分布方式,mesh parameters中添加树叶的mesh,以下图二的方式。然后详细参数设置如下图三。
14.树我们已经创建好了,接下来是加风力,选中需要增加风力的枝干,单击modify direction按钮,在弹出的窗口中添加wind animation。然后点击create按钮在窗口中拖动创建个风扇。在图中我们可以看到树木的第一层分支已经发生变化了,风很强啊。我们就来更改下面的参数。
15.在进行参数调节的时候。我们可以关闭一些面很多的路径层级,或者把网格显示成线,这样播放时间滑块的时候不会很卡。调节参数也很流畅。Stiffness的值控制波形的大小,下面的flexibility控制风的力度,scale frequency控制抖动的频率。我是这样设置的。设置完后大家可以拖动时间滑块来看看效果。
16.播放就可以看到每根枝干动的状态都不一样。这就是比较理想的效果,然后继续添加另外的枝干的风力。参数我就不详细列出了,大家自己去调试下。风力就是这么简单,制作完成后,可以输出VRay代理或者点缓存文件来应用到场景中成片渲染,直接用源文件渲染的话。源文件数量多了每帧会浪费掉大量时间来更新Growfx模型。
17.制作生长动画的话,依然要使用到modify direction里面的参数。比如我们来做个主干变短。第一层分支跟着变短的效果。打开modify direction窗口,在里面可以看到parameter length,点击后面的按钮会打开一个影响面板,我们在影响面板,在面板中我们可以看到有主干对各个子层级的控制。这里我们选择控制路径2的长度,然后再点开factor后面的图形控制窗口,参数默认不动。只要这里链接上的话。就表明路径1的长度产生变化的同时路径2的长度也会跟着改变。如果你高兴的话你还可以添加对路径2半径的控制或者路径1半径的控制。就相当于主干变短,那么主干的半径和一层分支的长度半径都会跟着变化。
18.接下来继续在一层分支的modify direction下添加对它下面的枝干的控制,依此类推。添加完成之后,生长的效果也就完成了。
补充说明1:这个插件能够很轻松地解决生长和风动的难题,不过它也有个难题,就是植物库少,你需要的生长和风动必须是原始的未塌陷格式。
补充说明2:GrowFX是由ExLevel公司基于Autodesk 3ds Max平台创建的一个植物插件,它可以创建参数化的树木花草以及自然界的其他植物模型。你可以使用多样化的参数来创建属于你自己的植物,比如年龄、生长方向、风效以及动画效果等等。