Unity MeshRender更换材质球方法

https://blog.csdn.net/ystistheking/article/details/70207792

转载自CSDN布莱克汉;

干活的时候遇到了这样一个问题,当要用代码给这个模型换材质球的时候,单独获取renderer组件里的materials数组里的materials[1]或者materials[2]是无法改变材质球的,此时采用以下两种方法可以实现功能:

1.

  GetComponent<Renderer>().material.CopyPropertiesFromMaterial(mat);
this.transform.GetComponent<Renderer>().materials[0].CopyPropertiesFromMaterial(MaterialSphere_1);
this.transform.GetComponent<Renderer>().materials[1].CopyPropertiesFromMaterial(MaterialSphere_2);

2.新建一个material[]然后赋给模型的materials

Material Mat1, Mat2;
Material[] Mat = new Material[2] { Mat1, Mat2 };
this.transform.GetComponent<Renderer>().materials = Mat;
余生很长,愿我们都活成自己喜欢的样子
原文地址:https://www.cnblogs.com/bananana/p/8664848.html