[vfxinfo原创] ThinkingParticle层级与粒子组的概念

vfxinfo.net 原创内容.如需转载请注明作者与出处

原版出处:thinking particle5.0帮助文档(Cebas公司出品)

原版翻译出处:vfxinfo.net

原版翻译:保罗大D

粒子组树视图

TP提供了许多对于3ds Max用户来说新的并且强大的特性.其中的一个新特性就是使用层级去管理你的动画时间跟3D场景里面的物体.TP里面的Particle Group Tree View(粒子组树视图)就是你去设置新的层级关系的地方并且可以让你随意的去管理你的粒子组

粒子组树视图

这些所谓的层级是什么,他们的工作原理是什么?

基本上所有你在TP系统里创建的高级特效都是基于TP能够把粒子存储为独立的组这一事实之上的.这些组跟容器一样能够把粒子装存在他们内部.这些个容器同样也能够存储跟他们一样的容器,以此类推!通过创建组并且去使用这些组,把他们放到一个单一的层级下(这里意思是说组之间是没有层级或者父子关系的),你可以只为某些个粒子去创建动画(这些是在某个特定组里的)他们可以被一系列的条件或者规则去影响,但是其他的粒子根本就不会受到任何作用.更不可思议的是粒子属于某个组之后,并不是一直都是固定在那个组或者跟那个组产生关联的.在系统里面通过你设定的任何条件或者规则,粒子可以在任意时间任何时候从一个组传递到另外一个组里去

默认情况下,当没有其他组存在的时候TP使用ALL 组来作为基本容器去存储粒子.ALL组是一直存在的,基础的组是不能够被用户删除或者移除的.它同样也类似于层级跟你创建的组分支的根目录.这允许你去忽略层级关系直接去进入控制你的所有粒子,只需要选择ALL组然后在组上去做更改就行了

使用组跟层级的练习案例,解释如下:

想象一下,给了你一个复杂的3D场景,要你去做一个关于飞船在太空中航行的动画,在陨石群中穿梭,然后被一些个陨石击中.当陨石跟飞船产生碰撞的时候,应该会产生碎块,并且让飞船表面产生破损

使用3ds Max标准的粒子功能,如何能应付如此复杂的场景?

大多数情况下,你不得不去创建很多个粒子系统来应付各种而已的任务,例如火箭的发射点烟雾,陨石群,碰撞的陨石,碎块等等.之后你还不得不去测试调整所有的粒子,这样粒子动画才能够跟火箭同步还有陨石运动上并且让特效变得真实可信

但是,TP…允许去建一个单一的粒子系统来去处理所有的这些有需求的粒子动画.这是一个非常重要的概念:TP只需要一个粒子系统来去创建多个粒子动画.这是就是组跟层级的原始概念.你可以去创建一个粒子组来代表陨石,一个来代表火箭排气,在创建一个代表碎块,以此类推.每个层级里面的组也可以存在子组.例如,碎块组可以有一个叫Dust的子组,用来代表碰撞之后的螺旋飞走的小颗粒物.对于如何创建你的层级来说是没有任何限制的

现在,你可能会觉得用一个系统来实现这样的效果设置起来会越来越复杂.事实上,它提供的不仅是一个集中控制点来调节你所有的粒子,同时也不需要”时间”,一切都是同步进行的.因为TP是基于规则的,如果客户之后想要更改你的粒子动画的时间(可能是要火箭飞的快点或者慢点),那就没有必要把之前的工作重新做一遍了.规则会自动的去读取你的更改并且做出相应的行为.

创建粒子组操作粒子组

当你想要大量使用粒子组的时候,有几个事情需要注意一下.在你去创建粒子组之前首先要做的事情是去做一些规划,想想你打算怎样去设置你的粒子组跟他们的层级.试着去定义一下你场景中的不同粒子种类(基于行为,交互等等)相应的把他们划分开.对于你的动画提前去做尽可能多的计划,当你真正去操作的时候”惊喜”也会更少一些.当然,TP允许你随时去创建粒子组并操作粒子组,所以,你一开始并没有优先去处理这些事情,你也没必要从头开始重新去做

当你去创建组或者操作组的时候一定要小心,删除或者移除已经在系统里连接的粒子组会造成无法预计的粒子效果.想象一下,你有一个粒子动画,粒子组上已经连接了好几个操作符然后你去修改组的布局.如果你删除或者移除了某个对动画来说很关键的组那么整个粒子系统可能会崩溃掉.如果你把某个粒子组移除了,操作符该怎样向平常一样进入粒子组或者从粒子组里存储并且读取粒子呢

想要创建一个新的粒子组,只需点击树视口下的Create 按钮.一旦你创建了一个新组,它会默认命名为Group.因为这个名字比较难以识别,而且所有你创建的组都会被赋予这个名字,所以当你创建一个新的粒子组的时候,强烈建议你立即去重命名一下以方便管理

想要重命名你创建的粒子组,在名字上缓慢的左键即可.这个操作跟在Windows里面重命名文件一样.单击一次来选择组(它将会高亮显示),然后缓慢左键点击一下打开重命名窗口

一旦你有好几个组的时候,你可能需要决定重新排布一下他们或者把某个组作为其他组的子组.重新排布组,你可以使用树视口下UPDown按钮.你同样也可以拖拽放置组到另一个里面来作为子组.这个过程有时候称之为Nesting,下面会有更详细的讲解.你甚至还可以拖拽组到ALL组上非常有效率的把他们重新放回到主分支的层级下来

注意:当你为某个粒子组创建子组的时候,作用给主组的所有效果都会同样自动传递给他的子组

创建组操作组

非常有必要让你去理解组跟层级是如何一起协调工作的还有他们的内部关系是怎样的,让我们来看一个更加复杂的设置.看一下下图中的粒子组案例


在上图中你可以看到,有三个主粒子组(ALL,New Particles跟BurnOutSmoke)还有五个嵌套在内的粒子组(SpaceshipFragments, CarFragments, Bullets, Gunsmoke 跟LeftWheel)并且每一个粒子组都是可以独立进入控制的,只需简单在上面点击一下即可.无论何时你去创建一个粒子的子组,所有应用到层级中较高层级的规则都会作用到子组上.所以,如果在Bullets组上应用了一系列规则,那么同样的规则也同样会应用到Gunsmoke这个子组上去

还有一些关于组的重要信息是:当你在Particle Group Tree View窗口穿件他们的时候,他们也会自动的在Groups Create Rollout里面被创建(见下图).这样一来你就可以在Wire Setup View里去使用这些组.而且,被创建的粒子组节点也会使用Particle View Tree View里一样的命名规则在下图中你可以看到上面案例里面所有的组也以同样的名字存在于Create卷展览下

  • author image
    十一 3, 2013 @ 9:39 上午

    额 这个不错

  • author image
    十一 3, 2013 @ 21:45 下午

    顶,不错,顺便说下这个网站很给力~

  • author image
    以后、会 回复
    十一 15, 2013 @ 11:02 上午

    很棒的网站,支持下