为了更好地组织和轻松导航,您可能需要简化大纲视图,以便仅显示渲染层或集合的成员。或者,您可能需要反向操作,仅显示不属于渲染层成员的节点。
在“大纲视图 显示”(Outliner > Display)菜单中,启用“渲染设置过滤器”(Render Setup Filter)。过滤器下拉列表将出现在“搜索”(Search)字段下方,允许您在以下显示选项之间切换:
在“渲染设置”(Render Setup)编辑器中,选择一个或多个层、一个或多个集合或者层与集合的组合,然后选择此选项。
选定某个层后,将显示属于该层的集合的所有节点。选定某个集合后,将显示属于该集合的所有节点。选定某个组合后,将显示当前选择包含的节点并集。
在大纲视图中,所有渲染设置成员均用黄色竖线表示。在本示例中,windowSill、room、baseMolding 和 topMolding 是集合的所有成员。由于它们是 roomGroup 层次的子对象,因此若要列出这些节点,则还必须在树中列出其父节点。所以,它们使用黄色竖线加以区分。这同样适用于 group1 层次的子对象 lampB 和 kFruitBowl。
单击锁定图标 可锁定选定的过滤器,避免意外更改。当过滤器处于锁定状态时,该图标以蓝色背景显示 。若要切换到另一个过滤器,必须禁用锁定图标。
如果使用表达式填充集合,则集合中可能会缺少命名错误的对象或节点。例如,如果使用 *Window* 填充集合,且 glassWindow7 错误命名为 glassWnidow7,则它不会包含在集合中。
选择“选定层外部”(Outside Selected Layers)过滤器列出不属于渲染层的节点,可以轻松标识命名有误的集合成员。
新的 -pythonModule 标志已添加到 itemFilter 命令,用于将 Python 函数作为过滤器运行。示例如下:
# Create a filter that runs a Python function as the filter intersectionFilter = cmds.itemFilter( -byScript='myFilterProc' -pythonModule='myModule' )
这将运行按如下所示声明的 Python 函数:
def myFilterProc(*args, **keywordArgs) : return True