使用过滤器功能可仅向集合添加变换、形状、着色器等。此外,您还可以创建自定义过滤器,以添加感兴趣的特定节点类型。
您可通过执行以下操作之一来填充集合:
请参见为渲染层创建集合。
有时,您可能仅需要将一种或两种节点包含在集合中。例如,您可能希望仅包含着色器,或者仅包含变换或形状节点。有关节点类型(例如,变换和形状)的详细信息,请参见节点类型。
在这种情况下,请单击集合上的过滤器图标 ,然后从可用的过滤器中进行选择:
选择过滤器之后,可以通过单击“特性编辑器”(Property Editor)中的“选择”(Select)按钮来检查结果,确保只有与所选过滤器匹配的节点在“大纲视图”(Outliner)中处于选定状态。您已简化集合,使其仅包含这些选定节点。
过滤器非常有用,因为它们允许您将覆盖仅应用于集合中的一部分节点。例如,如果您仅想平移集合中的 place3dTexture 节点,但集合同时包含纹理节点和几何体节点,则会将平移覆盖应用于集合中的这两种节点,几何体也会因此平移。使用过滤器可以避免无意中覆盖不想覆盖的内容。
在此示例中,表达式 Character* 与所有以 Character 开头的节点匹配。对于此示例,其中包括着色节点。但是,由于过滤器设置为变换和形状,因此,仅包含几何体节点,而着色器被排除在外。
通过选择相应的组节点或父节点并启用“包括层次”(Include Hierarchy)选项、然后使用“着色器”(Shaders)集合过滤器,可以创建着色器的集合。“包括层次”(Include Hierarchy)功能将遍历组节点或父节点的子节点。由于材质节点与变换节点关联,因此它将包含在集合中。
若要使用此选项创建着色器的集合,请遵循以下准则:
在“大纲视图”(Outliner)中选择组节点,然后在集合的“特性编辑器”(Property Editor)中单击“添加”(Add),可将其添加到集合。
如果要添加多个组节点,也可以使用表达式包含多个节点。
在此示例中,Mesh_K* 表达式用于将 Mesh_Killamari_Body、Mesh_Killamari_Eyes、Mesh_Killamari_Eyes_Glass 节点添加到集合,且已启用“包括层次”(Include Hierarchy)。“集合过滤器”(Collection Filters)将搜索这些节点的所有层次以包含其着色器:
如果提供的“集合过滤器”(Collection Filters)不符合您的特定用途,则可使用“自定义”(Custom)过滤器仅包含所选的特定节点类型,进一步简化集合。从下拉菜单中选择“自定义”(Custom),然后将节点类型添加到“特性编辑器 集合过滤器 类型”(Property Editor > Collection Filters > Types)属性。若要添加节点类型,请使用鼠标中键将节点从“大纲视图”(Outliner)拖放到“特性编辑器”(Property Editor),系统会自动识别其节点类型。将识别插件节点类型。
在以下示例中,当您使用鼠标中键将 Mesh_Killamari_Body 拖动到“特性编辑器 类型”(Property Editor > Types)属性时,将识别 transform 类型。同样,当您使用鼠标中键将 Killamari_DX11Eyes 拖动到“特性编辑器”(Property Editor)时,将识别 dx11Shader 类型。现在,当您单击“选择”(Select)按钮时,将选择属于 transform 和 dx11Shader 类型以及与 *K* 表达式匹配的所有节点。这些是 Killamari 集合的内容。
在“类型”(Types)字段中输入 texture/2d 等分类字符串,可添加文件节点或 2d 纹理节点(例如,“棋盘格”(Checker))。其他选项包括分类字符串 utility,用于添加 bump2d 或 place2dtexture 节点。此字段区分大小写;换句话说,Texture/2d 不会返回任何结果。
每个节点的“节点”文档中提供了有关其分类字符串的信息。有关详细信息,请参见 Maya 帮助中技术文档的“节点”部分。
可以使用 - 排除节点类型。例如,以下表达式包含除 Blinn 类型着色器外的所有变换和表面着色器:
transform shader/surface -blinn此外,您还可以通过分类字符串进行排除。此示例包括所有工具节点,但按 utility/general/placement/2d 分类的节点(例如,place2dTexture 节点)除外。
utility -utility/general/placement/2d