Version: Unity 6.0 (6000.0)
语言 : 中文
Upgrade material assets to URP or HDRP
材质变体

访问脚本中的材质属性

在检视面板 (Inspector) 窗口中,您所看到的材质资源的所有参数都可以通过脚本来访问,这让您能够在运行时更改材质的工作方式或为其制作动画效果。

在游戏运行过程中,您可以动态修改材质的数值属性、更改颜色,以及更换纹理。在这种工作中最常用到的方法有:

方法名称 用途
SetColor 更改材质的颜色(例如反照率着色颜色)
SetFloat 设置浮点值(例如,法线贴图乘数)
SetInteger 在材质中设置整数值
SetTexture 为材质分配新纹理

通过脚本处理材质的全套方法可以参考材质类脚本参考

有一点需要注意的是,这些方法只会设置当前着色器对象能够使用的材质属性。这意味着,如果着色器不使用任何纹理,或者根本没有绑定任何着色器,则调用 SetTexture 将无效。即使稍后设置了需要纹理的着色器,也是如此。因此,建议在设置任何属性之前设置所需的着色器。但是,设置着色器后,可以从一个着色器切换到使用相同纹理或属性的另一个着色器,且值会被保留。

这些方法的作用与所有简单着色器(如旧版着色器)以及除标准着色器以外的内置着色器(如粒子、精灵、UI 和无光照着色器)相同。但是,对于使用标准着色器的材质,在完全修改材质之前,您还必须了解一些其他要求。

Upgrade material assets to URP or HDRP
材质变体