使用LookFileBake创建外观文件
LookFileBake节点用于比较在节点图中的两个点(原始图和原始图的第二个点)处生成的场景图。在LookFileBake下面的每个位置节点的rootLocations参数记录原始场景图和下游场景图之间的差异。
创建外观文件
| 1. | 创建一个LookFileBake节点并将其放置在Node Graph。 |
| 2. | 从食谱中的烘烤点开始进行连接asset没有分配给orig输入LookFileBake节点。 |
小费: 通常,在导入几何图形之后直接从一点进行连接会产生最佳效果。
| 3. | 将配方下游的输出(该资产具有您要烘焙的外观)连接到default LookFileBake节点的输入。 |
| 4. | 选择LookFileBake节点,然后按Alt+E。 |
LookFileBake节点在Parameters标签。
| 5. | 在rootLocations,输入要遍历的场景图位置。 |
小费: 确保有一个好主意rootLocations与资产最初导入的位置匹配。
您可以使用遍历多个位置Add Locations在右边rootLocations参数。有关使用位置参数添加路径位置的更多信息,请参见节点参数基础。
| 6. | 在界面中输入外观文件的资产名称saveTo参数。 |
| 7. | 点击Write Look File按钮。 |
的Write Look File对话框显示。
| 8. | 选择要保存资产的位置(默认为saveTo参数),然后点击Accept。 |
Katana开始烘烤外观文件。这可能需要一些时间,因为rootLocations必须为每个通行证充分扩展,并比较其所有属性。在场景生成的场景图之间检测到的任何差异orig输入和在通过输入处生成的场景图将写入外观文件。
添加其他位置并使用rootIds
LookFileBake可以将多个原始点(根位置)与单个下游位置进行比较,从而有可能记录对位于不同场景图分支下的多个资产的更改。在解析具有多个根位置的外观文件时, Katana尝试将Look File中的根位置与目标场景中的场景图位置进行匹配。
您可以指定一个名为rootId对于任何场景图位置,以及-如果该位置用作LookFileBake中的根位置,请使用rootIds来帮助确定最终的Look File解析到哪个场景图位置。rootId是字符串类型的属性,在lookfile.rootId在场景图位置的“属性”中。
注意: 创建用户属性lookfile.rootId,请使用指向目标位置的AttributeSet节点。设置action到Create/Override, attributeName到lookfile.rootId , attributeType至string和groupInherit至Yes。在里面stringValue字段中,输入您选择的rootId。有关使用AttributeSet节点的更多信息,请参见使用AttributeSet节点进行更改。
注意: 您可以选择任何场景图位置作为根位置。它确定LookFileBake生成的相对路径(或多个相对路径)的第一级。
解析LookFileAssign后,将使用源目录和目标目录的根目录名称或由唯一的rootIds指定来确定本地路径源和目标根位置。使用确定的本地路径和材料应用于的位置名称的组合来应用外观文件中的材料。
在具有多个根位置和多个子位置的材质的示例中,解析结果LookFile时会产生许多可能的结果:
• 设置rootIds并匹配位置名称后,将按预期分配材料。
• 如果没有rootId,但位置名称相同,则会分配多个源材料之一。无法保证哪一个。
• 没有rootId和不同的位置名称,将分配多个源材料之一。同样,没有办法保证哪一个。
下面显示的场景图具有多个根位置firstRoot和secondRoot,每个下方都有几何图形。
在这种情况下,每个根位置都具有在其下方路径中具有已应用材质的几何形状,并且我们希望将这些材质包括在外观文件中。我们还想使用rootIds确定Look File的解析位置,因此场景图的位置firstRoot和secondRoot每个都有唯一的rootId。看到使用外观文件进行外观开发有关外观文件及其用途的更多信息。
要在具有多个根位置的LookFileBake中使用rootId,请先在根位置上设置rootId,然后将每个根位置添加到rootLocations编写LookFile之前,在LookFileBake节点中输入字段:
• 在如下所示的场景中,该场景具有多个场景图的根位置,请使用AttributeSet节点将rootIds添加到每个根位置。
• 添加一个LookFileBake节点。
• 编辑LookFileBake节点,选择Add Locations > Path,在节点的Parameters 标签,然后输入要添加到结果中的场景图位置的路径rootLocations领域。对要添加的每个其他根位置重复上述步骤。
• 编写外观文件。
查找文件使用每个rootId作为顶层存储本地路径以及资产名称。
注意: 如果所选的根位置具有rootId,它包含在LookFileBake中。如果不是,则使用位置名称。
使用LookFileAssign节点,将Look File放入具有不同场景图形位置名称和路径(例如下面所示的场景)的新场景。
尽管路径和路径名称不同,但是几何位置firstGeometry和secondGeometry与位置具有相同的关系firstLocal和secondLocal相同的位置firstRoot和secondRoot在原始场景中。所以,只要firstLocal与之共享rootId firstRoot和secondLocal与secondRoot ,并且几何位置名称相同,外观文件将按预期分配。
将其他通行证添加到外观文件
| 1. | 在里面LookFileBake节点,选择Add > Add Pass Input在右边passes参数分组。 |
新通行证名称参数显示。
| 2. | 在中输入新通行证的名称name参数。 |
新输入被添加到LookFileBake节点,根据新通行证的名称命名
| 3. | 连接新的输入LookFileBake节点到要记录其外观的配方中点的输出。 |
使外观文件包括对/ root的任何更改
选择是为了includeGlobalAttributes 里面的下拉菜单选项 LookFileBake节点的参数分组。
将材料包括在外观文件中
Look文件自动包括在其遍历位置下方分配给几何的材质(渲染器程序也是如此)。有时,包含在外观开发过程中创建的额外材料可能会很有用,以便稍后使用LookFileMaterialsIn或Material节点读取。
强制将材质包含在外观文件中:
| 1. | 在里面options LookFileBake节点的参数分组,选择Yes为了alwaysIncludeSelectedMaterialTrees落下。 |
显示位置窗口小部件。
| 2. | 在selectedMaterialTreeRootLocations,输入要包含的物料的根目录图形位置。 |
通过使用可以包含多个位置Add Locations在右边selectedMaterialTreeRootLocations参数。有关使用位置小部件添加路径位置的更多信息,请参见操纵场景图位置参数。
注意: 写入外观文件时未记录的两件事:随时间的变化(仅记录当前帧的差异)和删除的位置(外观文件无法删除位置)-对于几何图形,可以通过设置其外观来达到类似的效果可见性关闭)。