当前位置:首页 > ThinkingParticle粒子组与数据通道的概念
ThinkingParticle粒子组与数据通道的概念
直线网 www.linecg.com 转载vfxinfo
每次你在Particle Group Tree View里创建一个粒子组,在Create Rollouts里就会自动创建一个新的组操作符.这两个是紧紧联系在一起至死不分离的,你可以从粒子组数里面选择也可以从Wire Setup View里选择 如果你的粒子组树跟下面一样:
那么你就能在Create -> Groups Rollout那里看到如下所示:
如你所见,所有的组都是拥有直接联系的,他们就是一体的,并不仅仅存在于界面左边的层级数里面,他们也同样以操作符的形式存在,可以用来在界面右边操作区连接参数
当你在Group Tree View里面点击组的时候,你就会在右手边的用户界面里出现许多的卷展栏.这些卷展栏让你去设置粒子在3ds Max视口的显示模式.同样也可以去给每个组添加Data Channels(数据通道),然后可以再Wire Setup View你面进行使用.这些数据通道在做高级特效的时候非常有用,在你简历粒子动画的时候给予你无与伦比的灵活性.继续往下阅读学习更多关于数据通道的知识. 记住除非你在Master Dynamic里面把Force this Setting这个选项打开,否则你每个粒子组的显示跟外观都会出现在组卷展栏里让你去设置 Data Channel是什么?
Data Channels(以下简称通道数据)是从TP R1开始就在使用的一项技术.随着TP3.0版本的发布,通道数据的概念不应该在被用来在粒子之间转换数据.取而代之的是使用最新介绍给大家的memory 操作符,再有可能的情况下尽量去使用memory.但是,为了兼容性,这个特性还是存在并且能够使用他的全部功能的.对于复杂的BlackBoxes(黑盒)的通道数据而言,也许仍然是个好的选择
其中一个概念就是可以把任意的数据类型赋予给粒子.通道数据对于把某个系统未知的特性添加给粒子而言是非常灵活的.具体意思是说你可以为你的组操作符定义一个新的输出数据流,来代表通常未知的数据.这些个输出数据流可以是基于他们自身的规则跟条件
如上图所示,每一个粒子组都有一些基本参数设置,里面包含了各种各样的控制.其中一个控制是组里面的粒子在视口中的显示形态,还可以去给粒子添加显示颜色.粒子组里另一个标准属性就是数据通道的列表.你可以给粒子组添加各种不同类型的数值
The options are: 这些选项是: 浮点Float 整形Int 向量Point3 方向Alignment 颜色Color
接下来我们会讨论一下如何能利用这些形形色色的数据通道类型来给你带来优势
Data Channels是如何运作的?
当你的粒子动画需要一个或者多个特殊数值而这些数值通常都不是由标准的TP数据流提供的时候,解决方法来了...粒子数据流里面存在着所有你需要去控制修改粒子行为的信息.粒子尺寸,年龄,方向,质量还有很多其他的许多操作符都需要的常用参数.
数据通道的概念可能需要一点时间去适应去习惯,但是当你需要的时候这可能是非常强大的工具.既然通道的数据可以是由其他的规则跟条件控制的,那么你就可以去建立一个非常复制的数据流来重新定义你的粒子动画 创建一个新的数据通道需要下面几步
1:在粒子组上,你必须添加一个行的数据通道类型 2:从下拉列表里选择一个数据形态(浮点Float) 3:在上方的文字区域里,为当前数值输入一个名字 4:点击Add按钮来为粒子组添加一个参数
5:接下来,你需要通过在你的Wire Setup View创建一个Data Channel操作符 6:一点你有了一个Data Channel操作符,你就需要去初始化他
1A) 连接粒子组(在第一步创建通道的那个粒子组)到他上面,这样一来就会使用这些粒子作为来源.
2A) 接下来,给定一个代表当前数据类型的数据流到你想要表示的类型上
听起来跟迷惑,那么让我们快速的走一遍案例
比如说,某个数据流是需要用来表示粒子的Heat value.这该怎么实现呢?粒子数据流默认是没有提供这种信息的,但是通过试用Data Channel,应该是有可能去创建一个的
用户需要做的第一件事应该是在Particle Group Tree View里面选择他们的粒子组,接下来,他们要考虑下,哪种数据是他们希望从自定义输出数据流上得到的.在这个案例中,我们就假设他们想要一个浮点数值.所以你选择了一个浮点数据类型并且给予了一个名字然后点击添加.(如下图所示)
一旦你创建了一个新的通道,你就需要去定义它.去DynamicSet那并且在
Wire Setup View里添加一个新的Data Channel操作符,别忘了要把拥有新的数据通道的粒子组添加进来.把他们两连接到一起,这样一来Data Channel就会把修改后的组作为数据来源
如上图所示,这个粒子组名为HotParts,里面包含着名为Heat Index的行数据通道.这个一个之前在HotParts组上设置的浮点数据流.接下来,你需要给Data Channel操作符连接上一个浮点数值来初始化它
正在的乐趣从这开始.只要你喜欢你真的可以在这深入下去,因为你不必去连接一个静态数值给Data Channel.(如果读起来好绕口,那么请继续往下看).例如,可能为了去定义Heat Index的数值,你会创建一系列的规则(也可能是个黑盒)来去
计算在某个特定时间内每个粒子碰撞的次数跟力大小.碰撞次数越多的粒子就会创建更多的”Hotter”并且获得更高的Heat Index数值.这些粒子超过
Heat Index数值的时候可能会被传送到另一个组里面来去定义粒子之后的运动,例如通过提高他们的速度来表示”excited state物理里面的受激状态”
在上面的案例中有一个称之为Heat Index Test的黑盒已经被添加到DynamicSet里并且把他的输出数据流连接到Data Channel上
那么接下来会发生什么呢?现在新的数据通道已经设置好了并且已经赋予了一个数值,他可以跟其他的输出数据流一样在粒子组里去使用.如下所示,创建了一个新的DynamicSet基于某个阈值条件来激活去测试Heat Index的数值,粒子超过这个数值就会被放到一个名为Group的新组里
还有一件值得一提的事情是,既然你在粒子组里创建了不止一个数据通道,那么你就必须要注意让他们排列好.Data Channel自身有一个滑调,也就是你设置数值索引号的地方.不要给两个单独的数据通道同一个索引号.这是非常重要的.因为这个数值定义的是哪一个数据通道会影响到你的粒子动画
通过这个小案例演示了的一样,TP提供了其他软件系统都无法提供的无与伦比的灵活性让你去创建并且去控制你的粒子特效
直线网 www.linecg.com
共分享92篇相关文档