代码动态更换MeshRenderer的材质Materials

Posted 叫我张先生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码动态更换MeshRenderer的材质Materials相关的知识,希望对你有一定的参考价值。

public class metrailstest : MonoBehaviour
{
    Material[] m;
    Material i;
    public Material[] n;
    int index = 0;
    // Use this for initialization
    void Start()
    {
        i = this.GetComponent<MeshRenderer>().material;
        m = this.GetComponent<MeshRenderer>().materials;
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.A))
        {
            index++;
            if (index % 2 == 0)
                this.GetComponent<MeshRenderer>().materials = n;
            else
                this.GetComponent<MeshRenderer>().materials = m;
        }
    }
}

效果如下:

 

以上是关于代码动态更换MeshRenderer的材质Materials的主要内容,如果未能解决你的问题,请参考以下文章

关于Unity中如何代码动态修改天空盒

unity里怎么用代码更换材质球的颜色,求具体的步骤

unity怎么获取一个物体上材质球的名字?有多个材质球,怎么用C#脚本判断这个物体上的材质球是哪个

小功能⭐️Unity动态更换天空盒旋转天空盒

网格 材质

树莓派-为Ubuntu Mate更换国内源