高级数据操纵快速入门教程

粒子流中高级数据操纵工具的用法可能会相当复杂。对其工作方式了解越多,您可以执行的操作就越多。本教程旨在通过演示如何创建允许您使用 3D 对象(如茶壶)控制粒子方向的操作符来助您一臂之力。

技能级别:中级

完成时间:1 小时

第 1 部分:创建“数据”操作符

若要新建操作符,可以使用任何“数据”操作符:“数据图标”、“数据操作符”、“数据测试”或“数据图标测试”。

  1. 启动或重置 3ds Max,然后创建默认粒子流系统。按 6 键以打开“粒子视图”。
  2. 在“粒子视图”仓库中,将“数据图标”操作符拖放到“事件 001”中的“速度”操作符之上,以便在松开鼠标按钮时,“数据图标”操作符替换“速度”操作符。
  3. 单击“数据图标 001”操作符。

    “数据图标 001”卷展栏将显示在“粒子视图”中。

  4. 在卷展栏的顶部,单击“编辑数据流”按钮。

    这将打开数据视图,即“数据”操作符的用户界面。“数据视图”的工作方式与“粒子视图”的工作方式非常相似。

    对于本练习的第一部分,将创建一个简单操作符,该操作符可通过三个数值定义粒子速度。粒子属性的创建和修改可通过在“数据视图”中关联不同的子操作符来完成。在此示例中,将使用“标量”子操作符。

  5. 在“数据视图”仓库中,将三个“标量”子操作符(每个“标量”子操作符都对应于一个向量分量)拖放到主窗口中。

    默认情况下,“动态名称”功能已启用,因此每个新子操作符可将其最重要的一个或多个设置假定为名称。在这种情况下,名称是“值”设置:1.0。您将为“标量”子操作符提供更有意义的名称。

  6. 依次右键单击各个子操作符,并将其重命名为“速度 X”、“速度 Y”和“速度 Z”。


    然后,将定义初始值。

  7. 单击“速度 X”子操作符。


    其参数将显示在“速度 X”卷展栏上。

  8. 右键单击“值”微调器,将其设置为 0.0,然后启用“用作速度值”。保留默认的“单位每”设置:秒。



  9. 对“速度 Y”子操作符执行相同的操作。
  10. 将“速度 Z”“值”设置为 200.0,并启用“用作速度值”。

    然后,将“标量”子操作符创建的数据关联到粒子的速度数据通道。

  11. 将“输出标准”子操作符拖动到“标量”子操作符下方的“数据视图”中。


    “输出标准”子操作符的目的在于获取“数据”操作符中计算的数据并将其转化为粒子流系统可以使用的信息。因此,“输出标准”子操作符只有输入;其输出仅在“粒子视图”的上下文中才有意义。其默认动态名称是“位置向量”,因为它已设置为向量格式的输出位置数据。

  12. 单击“输出标准”子操作符,然后在其卷展栏上选择“速度”,并从下拉列表中选择“向量”。


    子操作符的动态名称现在为“速度向量”。

  13. 在“数据视图”窗口中,从“速度 X”子操作符的输出连接器拖动到“输出标准”子操作符的输入连接器。


    当松开鼠标按钮时,“转换”子操作符将自动显示在链接的两个子操作符之间。当尝试将不同但兼容的数据类型的两个连接器关联在一起时,这是“数据视图”中的标准行为。



    由于已对输入和输出进行动态命名和颜色编码,因此可以看到新子操作符自动设置为将实数(标量)数据转换为向量值。

  14. 将“速度 Y”子操作符的输出与“转换”子操作符的第二个输入 (R2) 关联。同样,将“速度 Z”与“转换”子操作符的 R3 关联。


    就是这样!已经创建了简单操作符。

  15. 拖动时间滑块,或播放动画。如有必要,移动对话框以清晰查看视口。


    按照自定义操作符的说明,粒子以正 Z 方向上移。

    提示: 如果粒子不按预期移动,则在“粒子视图”的“数据图标 001”卷展栏上单击“更新”。然后再次播放动画。

    在随后的步骤和过程中,也可能需要使用“更新”。

  16. 在“数据视图”中,高亮显示“速度 Z”子操作符,尝试不同的“值”设置,然后拖动时间滑块。

    粒子会反映速度更改。

  17. 高亮显示“速度 Y”子操作符,并为其指定一个正值,然后拖动时间滑块。

    粒子通过水平移动来反映沿 Y 轴的速度更改。

使用图标控制粒子运动

接下来,将速度向量链接到操作符图标的方向,从而使操作符更加复杂。这是世界原点上的小正方形,该正方形是在添加“数据图标”操作符时创建的。

  1. 在“粒子视图”中,高亮显示“数据图标”操作符,如果必要,请接着在“数据图标 001”卷展栏 “操作符图标”组中,将“类型”从“矩形”更改为“箭头”。


    图标会更改为箭头,从而便于看到其方向。

    可以使用“图标”子操作符请求图标的变换矩阵。

  2. 在“数据视图”中,将“图标”子操作符从仓库拖动到图解窗口的空白区域。


  3. 单击该“图标轴”子操作符,然后从“图标属性”下拉列表中,选择“图标 TM”。TM 表示变换矩阵。



    使用“函数”子操作符按图标矩阵倍增速度向量。

  4. 将“函数”子操作符添加到窗口的空白区域。
  5. 单击“函数”子操作符,然后将“第二个运算对象”“类型”设置为“矩阵”。还可将“函数”设置为“向量变换”。


  6. 单击“转换”子操作符(实数 --> 向量)和“输出标准”子操作符(速度向量)之间的关联,以高亮显示该关联,然后按 Delete 将其移除。

  7. 将“转换”子操作符的输出与“函数”子操作符的 V1 输入关联。
  8. 将“图标”子操作符的输出与“函数”子操作符的 M2 输入关联。请注意,您正在具有相同颜色的连接器之间进行关联。

  9. 将“函数”子操作符的输出与“输出标准”子操作符的输入关联。


    现在,图标方向可控制粒子方向。

  10. 围绕 X 轴和 Y 轴旋转图标。


    当旋转图标时,粒子流的方向也会相应地更改。

使用参考对象替换图标。

该操作和使用参考对象的方向设置粒子方向一样容易。

  1. 将茶壶添加到场景。
  2. 在“数据流”窗口中,单击以高亮显示“图标 TM”子操作符,然后按 Delete 将其删除。
  3. 在“数据流”的空白区域添加“选择对象”子操作符。


  4. 单击以高亮显示“选择对象”子操作符,然后在“选择对象 001”卷展栏中,单击“单个对象”按钮(最初显示为“无”)。在视口中,单击茶壶。

    茶壶的名称将显示在按钮和子操作符节点上。

  5. 接下来,添加“对象”子操作符。


    这使您能够指定要检索的对象属性。

  6. 高亮显示“对象”子操作符,然后从“对象属性”下拉列表中,选择“对象 TM”。


  7. 将“选择对象”子操作符连接到“对象”子操作符,然后将“对象”子操作符连接到“函数”子操作符的 M2 输入。


    现在,当围绕 X 轴和 Y 轴旋转茶壶时,该操作对粒子流产生的影响与旋转图标对粒子流产生的影响相同。



第 2 部分:将“数据”操作符作为标准操作符保存

创建“数据”操作符后,可以将其作为常规“粒子流”操作符保存。首先,露出最重要的参数。在这种情况下,它们是向量分量,即“标量”子操作符“值”设置和“选择对象”子操作符的按钮。

  1. 在“粒子视图”中,确保高亮显示“数据图标”操作符。在卷展栏上,单击“露出参数”按钮。

    这将打开“露出参数”对话框,使您可以收集和标识要露出的参数。基本上,可以使用该对话框创建操作符 UI。

  2. 在左侧列表中,高亮显示“速度 X”下的“值”条目。在该列表下方的“标签”字段中,键入 X:,然后单击“添加”按钮。

    左侧列表中的条目将更改为 [值 -> X:],且新标签将显示在右侧列表中。

    更重要的是,添加的参数将显示在“粒子视图”中的新“参数”卷展栏上。这将显示露出的参数,并对使用操作符的任何人可用。



  3. 对“速度 Y”“值”和“速度 Z”“值”执行相同的操作,将其分别标记为 Y:Z:

  4. 还可添加“茶壶 001”“对象”,将其标记为“参考对象:”。将“宽度”设置为最大值 95,以便有足够的空间容纳卷展栏上的按钮和标签。然后选择“组框”。最后,单击“添加”。
  5. 在“露出参数”对话框中,单击“关闭”按钮。

    所有四个参数现在将显示在“参数”卷展栏上。



    下一步是将“数据”操作符作为预设保存。

  6. 在“粒子视图”中的“控件”卷展栏上,单击“保存预设”按钮。

    这将打开“保存数据操作符预设”对话框。

  7. 在“预设/操作符名称”字段中,输入一个名称,如“速度 Gen”。

  8. 在此字段的右侧,将“另存为”设置为“操作符/测试”。

  9. 在“预设/操作符描述”字段中,输入描述,例如:“速度 Gen”通过数值控制粒子速度。

  10. 在“预设/操作符图标”组中,选择您喜欢的任何图标。


  11. 单击“确定”按钮。

    将显示一条消息,通知您该预设已保存。

  12. 若要使操作符显示在“粒子视图”仓库中,需要退出 3ds Max,然后重新启动。立即执行此操作。
  13. 添加粒子流源对象和茶壶。按 6 键以输入“粒子视图”。

    现在,仓库中包含新操作符。仓库中该操作符的名称后跟星号 (*)(默认后缀),这表示它是一个自定义操作符。



  14. 将“速度 Gen”操作符拖动到“事件 001”中的默认“速度”操作符之上。
  15. 单击“速度 Gen 001”操作符,然后在“粒子视图”中的卷展栏上,单击“参考对象”按钮,然后在视口中单击茶壶。
  16. 旋转茶壶,然后拖动时间滑块。

    茶壶方向可控制粒子流方向。



小结

使用粒子流的高级数据操纵工具集可创建您自己的自定义粒子流工具。