Version: 6000.3
语言: 中文
材质变体
材质变体继承

材质变体简介

材质变体如何帮助美术师

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

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

创建、转换或重新父级材质变量

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

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

有关材质变体层次结构的说明,请参阅材质变体继承

变体来源

可以从任何材质创建材质变体,包括你使用着色器图表制作的材质变体或从Asset StoreUnity 和社区成员创建的不断增长的免费和商业资产库。提供各种各样的资产,从纹理、模型和动画到整个项目示例、教程和编辑器扩展。更多信息
请参阅术语表
.有关如何从中创建材质变体的详细信息,请参阅创建、修改和应用材质变量着色器在 GPU 上运行的程序。更多信息
请参阅术语表
.

识别和还原更改

覆盖(Override) 是你对材质变体的属性所做的更改。你可以一次恢复一个覆盖,也可以一次恢复所有覆盖。Unity 不会通过 Undo 堆栈处理恢复,这意味着您可以在不撤消任何其他更改的情况下恢复 Override。

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

Unity 可防止继承问题

Unity 可防止祖先删除和循环依赖关系。如果您尝试删除 Material Variant 的父级,Unity 会警告您为子级选择新的父级或重新设置父级。

有关材质变体层次结构和继承错误消息的详细信息,请参阅材质变体继承

脚本

您可以使用材质变型 API 访问复杂或大型作的材质变型功能。

请参阅
材质(Material)定义表面应如何渲染的资产。更多信息
请参阅术语表
MaterialEditor API 文档,了解如何在脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表
.

与预制件变体的相似之处

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

  • 您可以重新设置材质变量的父级。
  • 您可以锁定材质变量属性。

先决条件和限制

材质变体并非旨在解决优化和可扩展性问题。 此外,无法在运行时在播放器中使用材质变体来更改材质。

其他资源

材质变体
材质变体继承