创建、修改和应用材质变体
以下说明解释了如何使用材质变体。工程师应参阅 Material 和 MaterialEditor API 文档,了解如何在脚本中使用材质变体。
预制件变体和材质变体之间的差异
材质变体工作流程与预制件变体工作流程大体相同。它们之间有两个主要区别:
- 您可以锁定材质变体的一个或多个属性,使任何人都无法在其子项中对这些属性进行编辑
- 可以更改材质变体的父项
如何创建材质变体
可通过两种方法来创建材质变体:
右键单击项目窗口中的材质
- 在项目窗口中选择一种材质。
- 右键单击该材质。
- 选择创建 (Create) > 材质变体 (Material Variant)。
在材质层级视图中选择
- 打开材质层级试图对话框。
- 选择材质类型下拉菜单。
- 选择材质变体 (Material Variant)。
- 为父字段分配材质
从材质层级视图中创建材质变体的下拉菜单
识别新的材质变体
创建新的材质变体时,该变体在材质检视面板中的名称为 [Material Name] 变体 (Material Variant)。Unity 开始加载新的材质变体时,材质变体在项目窗口中有一个条纹图标。Unity 完成加载新的材质变体后,常规材质预览将替换项目窗口中的条纹图标。
在材质变体上添加覆盖
- 选择材质变体。
- 在材质检视面板中修改其属性之一。
属性左侧的粗线(在此截屏中以红色圈出)表示覆盖。
还原材质变体上的一个或多个覆盖
- 右键单击一个覆盖。
- 选择还原 (Revert) 可还原此特定覆盖,或选择还原所有覆盖 (Revert all Overrides) 可还原此变体上的每个覆盖。如果此覆盖源自子项,则还原也适用于该子项。
有关继承如何确定还原更改的效果的详细说明,请参阅材质变体继承或还原向上应用的覆盖。
在层级视图中向上应用覆盖
可以在层级视图中将覆盖向上应用于任何祖先。
此下拉菜单可用于还原覆盖、向上应用覆盖或锁定覆盖。
将覆盖应用于父项
要将覆盖应用于父项,请右键单击覆盖,然后在下拉菜单中选择应用于 [name of parent]。
将覆盖应用于祖先
要将覆盖应用于祖先,请右键单击覆盖,然后在下拉菜单中选择应用于 [name of ancestor]。
恢复向上应用的一个或多个覆盖
向上应用覆盖后,就不能再在发起覆盖的子项上还原覆盖。相反,必须在接收者对象的父项或祖先上还原它;请参阅在材质变体上还原一个或多个覆盖中的说明。
删除材质变体
- 在项目窗口中选择材质变体。
- 按删除 (Delete) 键。下一步取决于材质变体是否带有子项。
- 如果材质变体没有子项,请单击警告对话框中的删除 (Delete) 以删除变体。
- 如果材质变体有一个或多个子项,则会出现警告对话框,提示材质中的一个或多个材质有一个或多个子项。是否想将所有这些子项的父项重新设置为其最近的剩余祖先?
- 警告对话框提供了三个选项:
-
删除子项并重新设置父项:此选项使 Unity 自动将此父项的子项分配给其最近的祖先;此新父项可以是材质变体或材质,而如果要删除的材质是层级视图的根,则没有父项。
-
仅删除注意:缺少父项的材质处于无效状态,无法在运行时正确加载。
-
取消请参阅继承错误消息,了解有关孤立材质变体的信息。
重新设置材质变体的父项
有两种方法可以为材质变体重新设置父项。
在材质检视面板中
- 在项目窗口中选择要重新设置父项的变体。
- 选择父项 (Parent) 属性旁边的靶心,然后在选择材质 (Select Material) 对话框中选择新父项。
选择新父项
在项目窗口中
将新的父材质或材质变体拖到目标子项上。
锁定属性
- 右键单击一个属性。
- 在下拉菜单中选择锁定子项 (Lock in children)。
- 锁定的属性旁边会显示一个挂锁图标。
要解锁属性,请再次单击锁定子项 (Lock in children)。
锁定菜单
将材质变体转换为材质
有两种方法可以将材质变体转换为材质。
从层级视图
- 在项目窗口中选择材质变体。
- 在材质检视面板中展开层级试图对话框。
- 在材质类型下拉菜单中选择材质 (Material)。
从层级视图转换为材质
从设置下拉菜单
- 单击材质检视面板中的设置下拉菜单。
- 在下拉选单中选择展平材质变体 (Flatten Material Variant)。
展平材质变体 (Flatten Material Variant) 选项。
其他资源