Version: Unity 6.0 (6000.0)
语言 : 中文
材质变体
材质变体继承

材质变体简介

材质变体如何帮助美术师

游戏中的许多材质可能是一个来源的变体——具有各种配色方案的服装、损坏和未损坏的场景版本、闪亮和风化的道具实例。为了帮助您管理和维护这些材质,材质变体解决了复制材料的特定缺点,如此表所示。

复制的材质 材质变体
如果源材质发生更改,则不会自动更改。 如果父项发生更改,则会自动更改。
要将更改复制到其源材质中的副本,必须手动调整源材质。 只需单击两次鼠标即可将更改从子材质复制到其父材质。
无法限制对副本属性的更改。 可以将一个或多个属性锁定在材质或材质变体上,以防止在其子项中修改这些属性。
无法将副本与不同的源相关联。 可以重新为材质变体设置父项。

创建、转换材质变体,或重新为之设置父项

可以从材质和其他材质变体创建材质变体。还可以将材质变体转换为材质。要在具有各种不同材质的变体中使用覆盖,可对该变体的父项进行更改。

有关如何创建和转换材质变体的信息,请参阅创建、修改和应用材质变体

请参阅材质变体继承以了解材质变体层级视图的说明。

变体来源

可从任何材质创建材质变体,包括使用着色器图 (Shader Graph) 制作或从资源商店 (Asset Store) 下载的材质变体。有关如何从着色器创建材质变体的详细信息,请参阅创建、修改和应用材质变体

识别和还原更改

覆盖是对材质变体的属性所做的更改。您可以一次还原一个覆盖或一次性还原所有覆盖。Unity 不会通过撤消堆栈处理还原,这意味着可以在不撤消任何其他更改的情况下还原某个覆盖。

有关如何识别和还原覆盖的详细信息,请参阅创建、修改和应用材质变体

Unity 可防止继承问题

Unity 可防止祖先删除和循环依赖关系。如果尝试删除材质变体的父项,Unity 会发出警告,提醒您为子项选择新父项或为其重新设置父项。

有关材质变体层级视图和继承错误消息的详细信息,请参阅材质变体继承

脚本

可以使用材质变体 API 访问材质变体功能,以进行复杂或大型的操作。

请参阅 MaterialMaterialEditor API 文档,了解如何在脚本中使用材质变体。

与预制件变体的相似之处

预制件变体和材质变体具有相同的功能、基本概念和工作流程。它们之间有两个主要区别:

  • 可以为材质变体重新设置父项。
  • 可以锁定材质变体属性。

前提条件和限制

材质变体的设计目的不是解决优化和可扩展性问题。此外,无法使用材质变体在播放器运行时更改材质。

其他资源

材质变体
材质变体继承