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;

 

posted @ 2018-03-28 16:58  小柏树  阅读(11538)  评论(0)    收藏  举报